diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index c51f15fcf465..ef3910b367b5 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 if FSL_CAAM
 	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
