[PATCHv2 12/13] global: Add a select for ARCH_MISC_INIT where used

Tom Rini trini at konsulko.com
Fri Feb 17 13:50:55 CET 2023


When we have an arch_misc_init function, we can select it to ensure it's
used.

In that there is a functional change here, it's that on i.MX6 it's
always been possible to populate "serial#" with something meaningful,
but not every platform was taking the hook, and now it is.

Signed-off-by: Tom Rini <trini at konsulko.com>
---
Cc: Marcel Ziswiler <marcel.ziswiler at toradex.com>
Cc: Marek Vasut <marex at denx.de>
Cc: Olaf Mandel <o.mandel at menlosystems.com>
Cc: Stefano Babic <sbabic at denx.de>
Cc: Fabio Estevam <festevam at gmail.com>
Cc: NXP i.MX U-Boot Team <uboot-imx at nxp.com>

Changes in v2:
- Always select ARCH_MISC_INIT on IMX8M as dealing with FSL_CAAM or not
  needs further SoC-specific clean up work. This replaces patches 10 and
  11 from before so that if the user enables FSL_CAAM then they will
  continue to get the functionality they had before. As Marek noted in the
  thread, further clean-up in this area would be good.

---
 arch/arm/Kconfig                          | 7 +++++++
 arch/arm/cpu/armv7/ls102xa/Kconfig        | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 1 +
 arch/arm/mach-imx/imx8/Kconfig            | 2 --
 arch/arm/mach-imx/imx8m/Kconfig           | 6 ------
 arch/arm/mach-imx/mx6/Kconfig             | 5 -----
 arch/arm/mach-imx/mx7ulp/Kconfig          | 1 -
 arch/arm/mach-imx/mxs/Kconfig             | 3 +++
 arch/arm/mach-omap2/Kconfig               | 1 +
 arch/arm/mach-tegra/tegra124/Kconfig      | 1 +
 arch/arm/mach-tegra/tegra20/Kconfig       | 1 +
 arch/arm/mach-tegra/tegra30/Kconfig       | 2 ++
 arch/mips/Kconfig                         | 1 +
 arch/powerpc/Kconfig                      | 1 +
 14 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index c51f15fcf465..2838b1e87dbd 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -605,6 +605,7 @@ config ARCH_MVEBU
 
 config ARCH_ORION5X
 	bool "Marvell Orion"
+	select ARCH_MISC_INIT
 	select CPU_ARM926EJS
 	select GPIO_EXTRA_HEADER
 	select SPL_SEPARATE_BSS if SPL
@@ -819,6 +820,7 @@ config ARCH_LPC32XX
 config ARCH_IMX8
 	bool "NXP i.MX8 platform"
 	select ARM64
+	select ARCH_MISC_INIT if FSL_CAAM
 	select SYS_FSL_HAS_SEC
 	select SYS_FSL_SEC_COMPAT_4
 	select SYS_FSL_SEC_LE
@@ -832,6 +834,7 @@ config ARCH_IMX8
 config ARCH_IMX8M
 	bool "NXP i.MX8M platform"
 	select ARM64
+	select ARCH_MISC_INIT
 	select GPIO_EXTRA_HEADER
 	select MACH_IMX
 	select SYS_FSL_HAS_SEC
@@ -902,6 +905,7 @@ config ARCH_MX31
 
 config ARCH_MX7ULP
 	bool "NXP MX7ULP"
+	select ARCH_MISC_INIT if FSL_CAAM
 	select BOARD_POSTCLK_INIT
 	select CPU_V7A
 	select GPIO_EXTRA_HEADER
@@ -929,6 +933,7 @@ config ARCH_MX7
 
 config ARCH_MX6
 	bool "Freescale MX6"
+	select ARCH_MISC_INIT
 	select BOARD_POSTCLK_INIT
 	select CPU_V7A
 	select GPIO_EXTRA_HEADER
@@ -1023,6 +1028,7 @@ config ARCH_QEMU
 
 config ARCH_RMOBILE
 	bool "Renesas ARM SoCs"
+	select ARCH_MISC_INIT if !RZA1
 	select DM
 	select DM_SERIAL
 	select GPIO_EXTRA_HEADER
@@ -1198,6 +1204,7 @@ config ARCH_VERSAL_NET
 
 config ARCH_VF610
 	bool "Freescale Vybrid"
+	select ARCH_MISC_INIT
 	select CPU_V7A
 	select GPIO_EXTRA_HEADER
 	select IOMUX_SHARE_CONF_REG
diff --git a/arch/arm/cpu/armv7/ls102xa/Kconfig b/arch/arm/cpu/armv7/ls102xa/Kconfig
index 3e292bf70e18..4546025195b9 100644
--- a/arch/arm/cpu/armv7/ls102xa/Kconfig
+++ b/arch/arm/cpu/armv7/ls102xa/Kconfig
@@ -1,5 +1,6 @@
 config ARCH_LS1021A
 	bool
+	select ARCH_MISC_INIT if FSL_CAAM
 	select FSL_DEVICE_DISABLE
 	select FSL_IFC if !QSPI_BOOT && !SD_BOOT_QSPI
 	select LS102XA_STREAM_ID
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
index a8b493e2f875..a42ede24f189 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
@@ -328,6 +328,7 @@ config ARCH_LX2160A
 
 config FSL_LSCH2
 	bool
+	select ARCH_MISC_INIT if FSL_CAAM
 	select SKIP_LOWLEVEL_INIT
 	select SYS_FSL_CCSR_GUR_BE
 	select SYS_FSL_CCSR_SCFG_BE
diff --git a/arch/arm/mach-imx/imx8/Kconfig b/arch/arm/mach-imx/imx8/Kconfig
index 37d12d189586..c211a1bb687e 100644
--- a/arch/arm/mach-imx/imx8/Kconfig
+++ b/arch/arm/mach-imx/imx8/Kconfig
@@ -75,7 +75,6 @@ config TARGET_IMX8QM_MEK
 	select BOARD_LATE_INIT
 	select IMX8QM
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_CONGA_QMX8
@@ -98,7 +97,6 @@ config TARGET_IMX8QXP_MEK
 	select BOARD_LATE_INIT
 	select IMX8QXP
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 endchoice
diff --git a/arch/arm/mach-imx/imx8m/Kconfig b/arch/arm/mach-imx/imx8m/Kconfig
index 5e4836b02feb..d6845c053718 100644
--- a/arch/arm/mach-imx/imx8m/Kconfig
+++ b/arch/arm/mach-imx/imx8m/Kconfig
@@ -51,7 +51,6 @@ config TARGET_IMX8MQ_EVK
 	select IMX8MQ
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_IMX8MQ_PHANBELL
@@ -74,7 +73,6 @@ config TARGET_IMX8MM_EVK
 	select SUPPORT_SPL
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_IMX8MM_ICORE_MX8MM
@@ -126,7 +124,6 @@ config TARGET_KONTRON_MX8MM
 	select SUPPORT_SPL
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_IMX8MN_BSH_SMM_S2
@@ -198,7 +195,6 @@ config TARGET_IMX8MP_EVK
 	select SUPPORT_SPL
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_IMX8MP_VENICE
@@ -250,7 +246,6 @@ config TARGET_IMX8MM_BEACON
 	select SUPPORT_SPL
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_IMX8MN_BEACON
@@ -260,7 +255,6 @@ config TARGET_IMX8MN_BEACON
 	select SUPPORT_SPL
 	select IMX8M_LPDDR4
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 	select SPL_CRYPTO if SPL
 
 config TARGET_PHYCORE_IMX8MM
diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig
index 7529b311f80e..5df41da8771b 100644
--- a/arch/arm/mach-imx/mx6/Kconfig
+++ b/arch/arm/mach-imx/mx6/Kconfig
@@ -364,7 +364,6 @@ config TARGET_MX6SABREAUTO
 	select SUPPORT_SPL
 	imply CMD_DM
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 config TARGET_MX6SABRESD
 	bool "mx6sabresd"
@@ -376,7 +375,6 @@ config TARGET_MX6SABRESD
 	select SUPPORT_SPL
 	imply CMD_DM
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 config TARGET_MX6SLEVK
 	bool "mx6slevk"
@@ -401,7 +399,6 @@ config TARGET_MX6SXSABRESD
 	select DM_THERMAL
 	select SUPPORT_SPL
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 config TARGET_MX6SXSABREAUTO
 	bool "mx6sxsabreauto"
@@ -421,7 +418,6 @@ config TARGET_MX6UL_9X9_EVK
 	select SUPPORT_SPL
 	imply CMD_DM
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 config TARGET_MX6UL_14X14_EVK
 	bool "mx6ul_14x14_evk"
@@ -432,7 +428,6 @@ config TARGET_MX6UL_14X14_EVK
 	select SUPPORT_SPL
 	imply CMD_DM
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 config TARGET_MX6UL_ENGICAM
 	bool "Support Engicam GEAM6UL/Is.IoT"
diff --git a/arch/arm/mach-imx/mx7ulp/Kconfig b/arch/arm/mach-imx/mx7ulp/Kconfig
index 632c4bf6fa5e..e238e977a71a 100644
--- a/arch/arm/mach-imx/mx7ulp/Kconfig
+++ b/arch/arm/mach-imx/mx7ulp/Kconfig
@@ -41,7 +41,6 @@ config TARGET_MX7ULP_EVK
 	select MX7ULP
 	select SYS_ARCH_TIMER
 	select FSL_CAAM
-	select ARCH_MISC_INIT
 
 endchoice
 
diff --git a/arch/arm/mach-imx/mxs/Kconfig b/arch/arm/mach-imx/mxs/Kconfig
index b2026a3758a5..797eaf83bda8 100644
--- a/arch/arm/mach-imx/mxs/Kconfig
+++ b/arch/arm/mach-imx/mxs/Kconfig
@@ -10,10 +10,12 @@ choice
 
 config TARGET_MX23_OLINUXINO
 	bool "Support mx23_olinuxino"
+	select ARCH_MISC_INIT
 	select BOARD_EARLY_INIT_F
 
 config TARGET_MX23EVK
 	bool "Support mx23evk"
+	select ARCH_MISC_INIT
 	select BOARD_EARLY_INIT_F
 
 config TARGET_XFI3
@@ -41,6 +43,7 @@ choice
 
 config TARGET_MX28EVK
 	bool "Support mx28evk"
+	select ARCH_MISC_INIT
 	select BOARD_EARLY_INIT_F
 
 config TARGET_XEA
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 309b967b0dd5..e874060d283c 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -113,6 +113,7 @@ config AM43XX
 config AM33XX
 	bool "AM33XX SoC"
 	select ARM_CORTEX_A8_CVE_2017_5715
+	select ARCH_MISC_INIT if USB
 	select DM_EVENT
 	select SPECIFY_CONSOLE_INDEX
 	imply NAND_OMAP_ELM
diff --git a/arch/arm/mach-tegra/tegra124/Kconfig b/arch/arm/mach-tegra/tegra124/Kconfig
index fb016aa46c90..b3f25fc0827d 100644
--- a/arch/arm/mach-tegra/tegra124/Kconfig
+++ b/arch/arm/mach-tegra/tegra124/Kconfig
@@ -6,6 +6,7 @@ choice
 
 config TARGET_APALIS_TK1
 	bool "Toradex Apalis TK1 module"
+	select ARCH_MISC_INIT
 	select ARCH_SUPPORT_PSCI
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
diff --git a/arch/arm/mach-tegra/tegra20/Kconfig b/arch/arm/mach-tegra/tegra20/Kconfig
index 955786c0c484..142290e97389 100644
--- a/arch/arm/mach-tegra/tegra20/Kconfig
+++ b/arch/arm/mach-tegra/tegra20/Kconfig
@@ -57,6 +57,7 @@ config TARGET_VENTANA
 
 config TARGET_COLIBRI_T20
 	bool "Toradex Colibri T20 board"
+	select ARCH_MISC_INIT
 	select BOARD_LATE_INIT
 	select TEGRA_UARTA_SDIO1
 
diff --git a/arch/arm/mach-tegra/tegra30/Kconfig b/arch/arm/mach-tegra/tegra30/Kconfig
index 5619d1cd42f7..8f6f24a7a7ca 100644
--- a/arch/arm/mach-tegra/tegra30/Kconfig
+++ b/arch/arm/mach-tegra/tegra30/Kconfig
@@ -12,6 +12,7 @@ choice
 
 config TARGET_APALIS_T30
 	bool "Toradex Apalis T30 board"
+	select ARCH_MISC_INIT
 	select BOARD_LATE_INIT
 
 config TARGET_BEAVER
@@ -26,6 +27,7 @@ config TARGET_CARDHU
 
 config TARGET_COLIBRI_T30
 	bool "Toradex Colibri T30 board"
+	select ARCH_MISC_INIT
 	select BOARD_LATE_INIT
 
 config TARGET_TEC_NG
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 569f5f48bc6c..536b6ad64aa9 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -98,6 +98,7 @@ config ARCH_JZ47XX
 config ARCH_OCTEON
 	bool "Support Marvell Octeon CN7xxx platforms"
 	select ARCH_EARLY_INIT_R
+	select ARCH_MISC_INIT
 	select CPU_CAVIUM_OCTEON
 	select DISPLAY_CPUINFO
 	select DMA_ADDR_T_64BIT
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index bee59c3bea4f..93bc1a4b6b3f 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -17,6 +17,7 @@ config MPC83xx
 
 config MPC85xx
 	bool "MPC85xx"
+	select ARCH_MISC_INIT if FSL_CAAM && !(ARCH_P1010 || TARGET_KMCENT2)
 	select CREATE_ARCH_SYMLINK
 	select SYS_FSL_DDR
 	select SYS_FSL_DDR_BE
-- 
2.34.1



More information about the U-Boot mailing list