[PATCH v2 00/19] arm: mach-k3: Initial support for Texas Instrument's J7200 Platform

This series adds initial support for latest new SoC, J7200, from Texas Instruments.
The J7200 SoC is a part of the K3 Multicore SoC architecture platform. It is targeted for for automotive gateway, vehicle compute systems, Vehicle-to-Vehicle (V2V) and Vehicle-to-Everything (V2X) applications. The SoC aims to meet the complex processing needs of modern embedded products.
See J7200 Technical Reference Manual (SPRUIU1, June 2020) for further details: https://www.ti.com/lit/pdf/spruiu1
Changes since v2: - Rebased on top of latest master - Addressed comments form Suman and Vignesh
Changes since v1: - Updated compatible for sdhci - Enabled CONFIG_OF_BOARD_SETUP for fixuping up msmc dt node. - Split R5 dts and A72 dts
Dave Gerlach (1): arm: dts: k3-j7200: Add R5 specific dts support
Jean-Jacques Hiblot (1): arm: mach-k3: Fix platform hang when SPL_MULTI_DTB_FIT is not enabled
Kishon Vijay Abraham I (1): soc: soc_ti_k3: Add device identification for J7200 SoC
Lokesh Vutla (15): board: ti: board_detect: Add stub functions for EEPROM detection apis board: ti: j721e: Probe eeprom only when CONFIG_TI_I2C_BOARD_DETECT is defined arm: mach-k3: Move mmr_unlock to a common location arm: mach-k3: sysfw-loader: Add support for rom loading sysfw image arm: mach-k3: j721e: Add detection for j721e arm: mach-k3: j721e: Fix unlocking control module registers arm: mach-k3: j7200: Add support for SOC detection arm: mach-k3: j7200: Add support for storing extended boot info from ROM arm: mach-k3: j7200: Detect if ROM has already loaded sysfw board: ti: j7200: Introduce support for j7200 build targets board: ti: j7200: Add board detection support for j7200 ram: k3-j721e: Relax version checks for memory controller arm: dts: k3-j7200: Add dts support configs: j7200_evm_r5: Add initial support configs: j7200_evm_a72: Add Initial support
Suman Anna (1): board: ti: j721e: Update fdt fixup logic for interconnect nodes
arch/arm/dts/Makefile | 4 +- .../k3-j7200-common-proc-board-u-boot.dtsi | 104 + arch/arm/dts/k3-j7200-common-proc-board.dts | 123 + arch/arm/dts/k3-j7200-ddr-evm-lp4-1600.dtsi | 2195 +++++++++++++++++ arch/arm/dts/k3-j7200-main.dtsi | 313 +++ arch/arm/dts/k3-j7200-mcu-wakeup.dtsi | 117 + .../arm/dts/k3-j7200-r5-common-proc-board.dts | 199 ++ arch/arm/dts/k3-j7200-som-p0.dtsi | 29 + arch/arm/dts/k3-j7200.dtsi | 175 ++ arch/arm/mach-k3/am6_init.c | 12 +- arch/arm/mach-k3/common.c | 38 + arch/arm/mach-k3/common.h | 6 + arch/arm/mach-k3/config.mk | 8 +- arch/arm/mach-k3/include/mach/hardware.h | 8 + .../arm/mach-k3/include/mach/j721e_hardware.h | 3 + arch/arm/mach-k3/include/mach/sys_proto.h | 3 + arch/arm/mach-k3/include/mach/sysfw-loader.h | 4 +- arch/arm/mach-k3/j721e_init.c | 30 +- arch/arm/mach-k3/sysfw-loader.c | 56 +- board/ti/common/board_detect.h | 13 + board/ti/j721e/Kconfig | 53 + board/ti/j721e/evm.c | 25 +- configs/j7200_evm_a72_defconfig | 175 ++ configs/j7200_evm_r5_defconfig | 130 + drivers/ram/k3-j721e/lpddr4.c | 16 +- drivers/soc/soc_ti_k3.c | 4 + include/configs/j721e_evm.h | 4 +- 27 files changed, 3776 insertions(+), 71 deletions(-) create mode 100644 arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi create mode 100644 arch/arm/dts/k3-j7200-common-proc-board.dts create mode 100644 arch/arm/dts/k3-j7200-ddr-evm-lp4-1600.dtsi create mode 100644 arch/arm/dts/k3-j7200-main.dtsi create mode 100644 arch/arm/dts/k3-j7200-mcu-wakeup.dtsi create mode 100644 arch/arm/dts/k3-j7200-r5-common-proc-board.dts create mode 100644 arch/arm/dts/k3-j7200-som-p0.dtsi create mode 100644 arch/arm/dts/k3-j7200.dtsi create mode 100644 configs/j7200_evm_a72_defconfig create mode 100644 configs/j7200_evm_r5_defconfig

Current usage of eeprom apis produce a build failure when CONFIG_TI_I2C_BOARD_DETECT is not defined. Add stub function for these apis to avoid build failures.
Reviewed-by: Suman Anna s-anna@ti.com Signed-off-by: Lokesh Vutla lokeshvutla@ti.com --- board/ti/common/board_detect.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/board/ti/common/board_detect.h b/board/ti/common/board_detect.h index 9f75b5c004..de7cb52dfc 100644 --- a/board/ti/common/board_detect.h +++ b/board/ti/common/board_detect.h @@ -311,6 +311,7 @@ int __maybe_unused ti_i2c_eeprom_am6_get(int bus_addr, int dev_addr, */ int __maybe_unused ti_i2c_eeprom_am6_get_base(int bus_addr, int dev_addr);
+#ifdef CONFIG_TI_I2C_BOARD_DETECT /** * board_ti_is() - Board detection logic for TI EVMs * @name_tag: Tag used in eeprom for the board @@ -454,5 +455,17 @@ bool board_ti_was_eeprom_read(void); * Return: 0 if all went fine, else return error. */ int ti_i2c_eeprom_am_set(const char *name, const char *rev); +#else +static inline bool board_ti_is(char *name_tag) { return false; }; +static inline bool board_ti_k3_is(char *name_tag) { return false; }; +static inline bool board_ti_rev_is(char *rev_tag, int cmp_len) +{ return false; }; +static inline char *board_ti_get_rev(void) { return NULL; }; +static inline char *board_ti_get_config(void) { return NULL; }; +static inline char *board_ti_get_name(void) { return NULL; }; +static inline bool board_ti_was_eeprom_read(void) { return false; }; +static inline int ti_i2c_eeprom_am_set(const char *name, const char *rev) +{ return -EINVAL; }; +#endif
#endif /* __BOARD_DETECT_H */
participants (1)
-
Lokesh Vutla