diff options
Diffstat (limited to 'arch/arm')
26 files changed, 219 insertions, 25 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 2554a2cd14..c04adfbe50 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -201,6 +201,8 @@ config ARCH_DAVINCI config KIRKWOOD bool "Marvell Kirkwood" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F + select ARCH_MISC_INIT config ARCH_MVEBU bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)" @@ -224,10 +226,13 @@ config TARGET_WORK_92105 config TARGET_MX25PDK bool "Support mx25pdk" + select BOARD_LATE_INIT select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_ZMX25 bool "Support zmx25" + select BOARD_LATE_INIT select CPU_ARM926EJS config TARGET_APF27 @@ -254,16 +259,19 @@ config TARGET_MX23EVK bool "Support mx23evk" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_MX28EVK bool "Support mx28evk" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_MX23_OLINUXINO bool "Support mx23_olinuxino" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_BG0900 bool "Support bg0900" @@ -287,18 +295,22 @@ config ORION5X config TARGET_SPEAR300 bool "Support spear300" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_SPEAR310 bool "Support spear310" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_SPEAR320 bool "Support spear320" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_SPEAR600 bool "Support spear600" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_STV0991 bool "Support stv0991" @@ -311,21 +323,32 @@ config TARGET_STV0991 config TARGET_X600 bool "Support x600" + select BOARD_LATE_INIT select CPU_ARM926EJS select SUPPORT_SPL config TARGET_IMX31_PHYCORE - bool "Support imx31_phycore" + bool "Support imx31_phycore_eet" select CPU_ARM1136 + select BOARD_EARLY_INIT_F + +config TARGET_IMX31_PHYCORE_EET + bool "Support imx31_phycore_eet" + select BOARD_LATE_INIT + select CPU_ARM1136 + select BOARD_EARLY_INIT_F config TARGET_MX31ADS bool "Support mx31ads" select CPU_ARM1136 + select BOARD_EARLY_INIT_F config TARGET_MX31PDK bool "Support mx31pdk" + select BOARD_LATE_INIT select CPU_ARM1136 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_WOODBURN bool "Support woodburn" @@ -342,6 +365,7 @@ config TARGET_FLEA3 config TARGET_MX35PDK bool "Support mx35pdk" + select BOARD_LATE_INIT select CPU_ARM1136 config ARCH_BCM283X @@ -368,14 +392,17 @@ config TARGET_VEXPRESS_CA9X4 config TARGET_BRXRE1 bool "Support BRXRE1" select ARCH_OMAP2 + select BOARD_LATE_INIT config TARGET_BRPPT1 bool "Support BRPPT1" select ARCH_OMAP2 + select BOARD_LATE_INIT config TARGET_DRACO bool "Support draco" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -383,6 +410,7 @@ config TARGET_DRACO config TARGET_THUBAN bool "Support thuban" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -390,6 +418,7 @@ config TARGET_THUBAN config TARGET_RASTABAN bool "Support rastaban" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -397,6 +426,7 @@ config TARGET_RASTABAN config TARGET_ETAMIN bool "Support etamin" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -404,6 +434,7 @@ config TARGET_ETAMIN config TARGET_PXM2 bool "Support pxm2" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -411,6 +442,7 @@ config TARGET_PXM2 config TARGET_RUT bool "Support rut" select ARCH_OMAP2 + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -485,6 +517,8 @@ config ARCH_MX7 select SYS_FSL_HAS_SEC if SECURE_BOOT select SYS_FSL_SEC_COMPAT_4 select SYS_FSL_SEC_LE + select BOARD_EARLY_INIT_F + select ARCH_MISC_INIT config ARCH_MX6 bool "Freescale MX6" @@ -496,31 +530,41 @@ config ARCH_MX6 config ARCH_MX5 bool "Freescale MX5" select CPU_V7 + select BOARD_EARLY_INIT_F config TARGET_M53EVK bool "Support m53evk" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_MX51EVK bool "Support mx51evk" + select BOARD_LATE_INIT select CPU_V7 + select BOARD_EARLY_INIT_F config TARGET_MX53ARD bool "Support mx53ard" select CPU_V7 + select BOARD_EARLY_INIT_F config TARGET_MX53EVK bool "Support mx53evk" + select BOARD_LATE_INIT select CPU_V7 + select BOARD_EARLY_INIT_F config TARGET_MX53LOCO bool "Support mx53loco" + select BOARD_LATE_INIT select CPU_V7 + select BOARD_EARLY_INIT_F config TARGET_MX53SMD bool "Support mx53smd" select CPU_V7 + select BOARD_EARLY_INIT_F config OMAP34XX bool "OMAP34XX SoC" @@ -560,6 +604,7 @@ config ARCH_RMOBILE bool "Renesas ARM SoCs" select DM select DM_SERIAL + select BOARD_EARLY_INIT_F config TARGET_S32V234EVB bool "Support s32v234evb" @@ -586,6 +631,8 @@ config ARCH_SOCFPGA select DM_SPI_FLASH select DM_SPI select ENABLE_ARM_SOC_BOOT0_HOOK + select ARCH_EARLY_INIT_R + select ARCH_MISC_INIT config TARGET_CM_T43 bool "Support cm_t43" @@ -630,6 +677,7 @@ config TARGET_VF610TWR config TARGET_COLIBRI_VF bool "Support Colibri VF50/61" + select BOARD_LATE_INIT select CPU_V7 select SYS_FSL_ERRATUM_ESDHC111 @@ -649,6 +697,7 @@ config TARGET_BK4R1 config ARCH_ZYNQ bool "Xilinx Zynq Platform" + select BOARD_LATE_INIT select CPU_V7 select SUPPORT_SPL select OF_CONTROL @@ -669,6 +718,7 @@ config ARCH_ZYNQ config ARCH_ZYNQMP bool "Support Xilinx ZynqMP Platform" select ARM64 + select BOARD_LATE_INIT select DM select OF_CONTROL select DM_SERIAL @@ -707,6 +757,7 @@ config TARGET_LS2080A_EMU select ARCH_LS2080A select ARM64 select ARMV8_MULTIENTRY + select ARCH_MISC_INIT help Support for Freescale LS2080A_EMU platform The LS2080A Development System (EMULATOR) is a pre silicon @@ -718,6 +769,7 @@ config TARGET_LS2080A_SIMU select ARCH_LS2080A select ARM64 select ARMV8_MULTIENTRY + select ARCH_MISC_INIT help Support for Freescale LS2080A_SIMU platform The LS2080A Development System (QDS) is a pre silicon @@ -729,7 +781,9 @@ config TARGET_LS2080AQDS select ARCH_LS2080A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL + select ARCH_MISC_INIT help Support for Freescale LS2080AQDS platform The LS2080A Development System (QDS) is a high-performance @@ -741,7 +795,9 @@ config TARGET_LS2080ARDB select ARCH_LS2080A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL + select ARCH_MISC_INIT help Support for Freescale LS2080ARDB platform. The LS2080A Reference design board (RDB) is a high-performance @@ -763,6 +819,7 @@ config TARGET_LS1012AQDS bool "Support ls1012aqds" select ARCH_LS1012A select ARM64 + select BOARD_LATE_INIT help Support for Freescale LS1012AQDS platform. The LS1012A Development System (QDS) is a high-performance @@ -773,6 +830,7 @@ config TARGET_LS1012ARDB bool "Support ls1012ardb" select ARCH_LS1012A select ARM64 + select BOARD_LATE_INIT help Support for Freescale LS1012ARDB platform. The LS1012A Reference design board (RDB) is a high-performance @@ -791,6 +849,7 @@ config TARGET_LS1012AFRDM config TARGET_LS1021AQDS bool "Support ls1021aqds" + select BOARD_LATE_INIT select CPU_V7 select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT @@ -799,9 +858,11 @@ config TARGET_LS1021AQDS select ARCH_SUPPORT_PSCI select LS1_DEEP_SLEEP select SYS_FSL_DDR + select BOARD_EARLY_INIT_F config TARGET_LS1021ATWR bool "Support ls1021atwr" + select BOARD_LATE_INIT select CPU_V7 select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT @@ -809,9 +870,11 @@ config TARGET_LS1021ATWR select ARCH_LS1021A select ARCH_SUPPORT_PSCI select LS1_DEEP_SLEEP + select BOARD_EARLY_INIT_F config TARGET_LS1021AIOT bool "Support ls1021aiot" + select BOARD_LATE_INIT select CPU_V7 select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT @@ -829,7 +892,9 @@ config TARGET_LS1043AQDS select ARCH_LS1043A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL + select BOARD_EARLY_INIT_F help Support for Freescale LS1043AQDS platform. @@ -838,7 +903,9 @@ config TARGET_LS1043ARDB select ARCH_LS1043A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL + select BOARD_EARLY_INIT_F help Support for Freescale LS1043ARDB platform. @@ -847,8 +914,10 @@ config TARGET_LS1046AQDS select ARCH_LS1046A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL select DM_SPI_FLASH if DM_SPI + select BOARD_EARLY_INIT_F help Support for Freescale LS1046AQDS platform. The LS1046A Development System (QDS) is a high-performance @@ -860,9 +929,11 @@ config TARGET_LS1046ARDB select ARCH_LS1046A select ARM64 select ARMV8_MULTIENTRY + select BOARD_LATE_INIT select SUPPORT_SPL select DM_SPI_FLASH if DM_SPI select POWER_MC34VR500 + select BOARD_EARLY_INIT_F help Support for Freescale LS1046ARDB platform. The LS1046A Reference Design Board (RDB) is a high-performance @@ -883,6 +954,7 @@ config TARGET_COLIBRI_PXA270 config ARCH_UNIPHIER bool "Socionext UniPhier SoCs" + select BOARD_LATE_INIT select CLK_UNIPHIER select DM select DM_GPIO diff --git a/arch/arm/cpu/armv7/mx5/Kconfig b/arch/arm/cpu/armv7/mx5/Kconfig index 5fb55135ab..7b55747612 100644 --- a/arch/arm/cpu/armv7/mx5/Kconfig +++ b/arch/arm/cpu/armv7/mx5/Kconfig @@ -20,6 +20,7 @@ config TARGET_USBARMORY config TARGET_MX53CX9020 bool "Support CX9020" + select BOARD_LATE_INIT select CPU_V7 select MX53 select DM diff --git a/arch/arm/cpu/armv7/mx6/Kconfig b/arch/arm/cpu/armv7/mx6/Kconfig index c646966f75..3b0409122e 100644 --- a/arch/arm/cpu/armv7/mx6/Kconfig +++ b/arch/arm/cpu/armv7/mx6/Kconfig @@ -53,10 +53,12 @@ choice config TARGET_ADVANTECH_DMS_BA16 bool "Advantech dms-ba16" + select BOARD_LATE_INIT select MX6Q config TARGET_APALIS_IMX6 bool "Toradex Apalis iMX6 board" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_SERIAL @@ -67,12 +69,15 @@ config TARGET_ARISTAINETOS config TARGET_ARISTAINETOS2 bool "aristainetos2" + select BOARD_LATE_INIT config TARGET_ARISTAINETOS2B bool "Support aristainetos2-revB" + select BOARD_LATE_INIT config TARGET_CGTQMX6EVAL bool "cgtqmx6eval" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_THERMAL @@ -86,6 +91,7 @@ config TARGET_CM_FX6 config TARGET_COLIBRI_IMX6 bool "Toradex Colibri iMX6 board" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_SERIAL @@ -93,17 +99,21 @@ config TARGET_COLIBRI_IMX6 config TARGET_EMBESTMX6BOARDS bool "embestmx6boards" + select BOARD_LATE_INIT config TARGET_GE_B450V3 bool "General Electric B450v3" + select BOARD_LATE_INIT select MX6Q config TARGET_GE_B650V3 bool "General Electric B650v3" + select BOARD_LATE_INIT select MX6Q config TARGET_GE_B850V3 bool "General Electric B850v3" + select BOARD_LATE_INIT select MX6Q config TARGET_GW_VENTANA @@ -112,10 +122,12 @@ config TARGET_GW_VENTANA config TARGET_KOSAGI_NOVENA bool "Kosagi Novena" + select BOARD_LATE_INIT select SUPPORT_SPL config TARGET_MX6CUBOXI bool "Solid-run mx6 boards" + select BOARD_LATE_INIT select SUPPORT_SPL config TARGET_MX6QARM2 @@ -147,14 +159,18 @@ config TARGET_MX6Q_ICORE_RQS config TARGET_MX6QSABREAUTO bool "mx6qsabreauto" + select BOARD_LATE_INIT select DM select DM_THERMAL + select BOARD_EARLY_INIT_F config TARGET_MX6SABRESD bool "mx6sabresd" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_THERMAL + select BOARD_EARLY_INIT_F config TARGET_MX6SLEVK bool "mx6slevk" @@ -162,6 +178,7 @@ config TARGET_MX6SLEVK config TARGET_MX6SLLEVK bool "mx6sll evk" + select BOARD_LATE_INIT select MX6SLL select DM select DM_THERMAL @@ -172,21 +189,26 @@ config TARGET_MX6SXSABRESD select SUPPORT_SPL select DM select DM_THERMAL + select BOARD_EARLY_INIT_F config TARGET_MX6SXSABREAUTO bool "mx6sxsabreauto" + select BOARD_LATE_INIT select MX6SX select DM select DM_THERMAL + select BOARD_EARLY_INIT_F config TARGET_MX6UL_9X9_EVK bool "mx6ul_9x9_evk" + select BOARD_LATE_INIT select MX6UL select DM select DM_THERMAL select SUPPORT_SPL config TARGET_MX6UL_14X14_EVK + select BOARD_LATE_INIT bool "mx6ul_14x14_evk" select MX6UL select DM @@ -207,6 +229,7 @@ config TARGET_MX6UL_GEAM config TARGET_MX6ULL_14X14_EVK bool "Support mx6ull_14x14_evk" + select BOARD_LATE_INIT select MX6ULL select DM select DM_THERMAL @@ -224,6 +247,7 @@ config TARGET_PICO_IMX6UL config TARGET_LITEBOARD bool "Grinn liteBoard (i.MX6UL)" + select BOARD_LATE_INIT select LITESOM config TARGET_PLATINUM_PICON @@ -236,6 +260,7 @@ config TARGET_PLATINUM_TITANIUM config TARGET_PCM058 bool "Phytec PCM058 i.MX6 Quad" + select BOARD_LATE_INIT select SUPPORT_SPL config TARGET_SECOMX6 @@ -249,13 +274,16 @@ config TARGET_TITANIUM config TARGET_TQMA6 bool "TQ Systems TQMa6 board" + select BOARD_LATE_INIT config TARGET_UDOO bool "udoo" + select BOARD_LATE_INIT select SUPPORT_SPL config TARGET_UDOO_NEO bool "UDOO Neo" + select BOARD_LATE_INIT select SUPPORT_SPL select MX6SX select DM @@ -263,19 +291,23 @@ config TARGET_UDOO_NEO config TARGET_SAMTEC_VINING_2000 bool "samtec VIN|ING 2000" + select BOARD_LATE_INIT select MX6SX select DM select DM_THERMAL config TARGET_WANDBOARD bool "wandboard" + select BOARD_LATE_INIT select SUPPORT_SPL config TARGET_WARP bool "WaRP" + select BOARD_LATE_INIT config TARGET_XPRESS bool "CCV xPress" + select BOARD_LATE_INIT select MX6UL select DM select DM_THERMAL @@ -283,12 +315,14 @@ config TARGET_XPRESS config TARGET_ZC5202 bool "zc5202" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_THERMAL config TARGET_ZC5601 bool "zc5601" + select BOARD_LATE_INIT select SUPPORT_SPL select DM select DM_THERMAL diff --git a/arch/arm/cpu/armv7/mx7/Kconfig b/arch/arm/cpu/armv7/mx7/Kconfig index fb00b8c67c..8dfb4c9646 100644 --- a/arch/arm/cpu/armv7/mx7/Kconfig +++ b/arch/arm/cpu/armv7/mx7/Kconfig @@ -18,18 +18,21 @@ choice config TARGET_MX7DSABRESD bool "mx7dsabresd" + select BOARD_LATE_INIT select MX7D select DM select DM_THERMAL config TARGET_WARP7 bool "warp7" + select BOARD_LATE_INIT select MX7D select DM select DM_THERMAL config TARGET_COLIBRI_IMX7 bool "Support Colibri iMX7S/iMX7D modules" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_THERMAL diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig index ba411e2af8..47897f4c90 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig +++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig @@ -5,6 +5,8 @@ config ARCH_LS1012A select SYS_FSL_DDR_BE select SYS_FSL_MMDC select SYS_FSL_ERRATUM_A010315 + select ARCH_EARLY_INIT_R + select BOARD_EARLY_INIT_F config ARCH_LS1043A bool @@ -22,6 +24,8 @@ config ARCH_LS1043A select SYS_FSL_ERRATUM_A010539 select SYS_FSL_HAS_DDR3 select SYS_FSL_HAS_DDR4 + select ARCH_EARLY_INIT_R + select BOARD_EARLY_INIT_F config ARCH_LS1046A bool @@ -38,6 +42,8 @@ config ARCH_LS1046A select SYS_FSL_ERRATUM_A010539 select SYS_FSL_HAS_DDR4 select SYS_FSL_SRDS_2 + select ARCH_EARLY_INIT_R + select BOARD_EARLY_INIT_F config ARCH_LS2080A bool @@ -62,6 +68,8 @@ config ARCH_LS2080A select SYS_FSL_ERRATUM_A009803 select SYS_FSL_ERRATUM_A009942 select SYS_FSL_ERRATUM_A010165 + select ARCH_EARLY_INIT_R + select BOARD_EARLY_INIT_F config FSL_LSCH2 bool diff --git a/arch/arm/include/asm/fsl_secure_boot.h b/arch/arm/include/asm/fsl_secure_boot.h index f920215d01..17ca540908 100644 --- a/arch/arm/include/asm/fsl_secure_boot.h +++ b/arch/arm/include/asm/fsl_secure_boot.h @@ -7,14 +7,6 @@ #ifndef __FSL_SECURE_BOOT_H #define __FSL_SECURE_BOOT_H -#ifdef CONFIG_SECURE_BOOT - -#ifndef CONFIG_FIT_SIGNATURE -#define CONFIG_CHAIN_OF_TRUST -#endif - -#endif - #ifdef CONFIG_CHAIN_OF_TRUST #define CONFIG_CMD_ESBC_VALIDATE #define CONFIG_FSL_SEC_MON diff --git a/arch/arm/include/asm/imx-common/dma.h b/arch/arm/include/asm/imx-common/dma.h index 1aec4f9d5a..0244947b6e 100644 --- a/arch/arm/include/asm/imx-common/dma.h +++ b/arch/arm/include/asm/imx-common/dma.h @@ -16,12 +16,7 @@ #include <linux/list.h> #include <linux/compiler.h> -#ifndef CONFIG_ARCH_DMA_PIO_WORDS -#define DMA_PIO_WORDS 15 -#else -#define DMA_PIO_WORDS CONFIG_ARCH_DMA_PIO_WORDS -#endif - +#define DMA_PIO_WORDS 15 #define MXS_DMA_ALIGNMENT ARCH_DMA_MINALIGN /* diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig index 13e19ba2fe..99b88d1785 100644 --- a/arch/arm/mach-at91/Kconfig +++ b/arch/arm/mach-at91/Kconfig @@ -11,6 +11,7 @@ config TARGET_AT91RM9200EK config TARGET_AT91SAM9260EK bool "Atmel at91sam9260 reference board" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_ETHERNUT5 bool "Ethernut5 board" @@ -25,6 +26,7 @@ config TARGET_SNAPPER9260 config TARGET_GURNARD bool "Support gurnard" + select BOARD_LATE_INIT select CPU_ARM926EJS select DM select DM_SERIAL @@ -42,6 +44,7 @@ config TARGET_PM9261 config TARGET_AT91SAM9263EK bool "Atmel at91sam9263 reference board" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_USB_A9263 bool "Caloa USB A9260 board" @@ -55,6 +58,7 @@ config TARGET_AT91SAM9M10G45EK bool "Atmel AT91SAM9M10G45-EK board" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_PM9G45 bool "Ronetix pm9g45 board" @@ -69,45 +73,55 @@ config TARGET_AT91SAM9N12EK bool "Atmel AT91SAM9N12-EK board" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_AT91SAM9RLEK bool "Atmel at91sam9rl reference board" select CPU_ARM926EJS + select BOARD_EARLY_INIT_F config TARGET_AT91SAM9X5EK bool "Atmel AT91SAM9X5-EK board" select CPU_ARM926EJS select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D2_PTC bool "SAMA5D2 PTC board" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D2_XPLAINED bool "SAMA5D2 Xplained board" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D3_XPLAINED bool "SAMA5D3 Xplained board" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D3XEK bool "SAMA5D3X-EK board" + select BOARD_LATE_INIT select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D4_XPLAINED bool "SAMA5D4 Xplained board" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_SAMA5D4EK bool "SAMA5D4 Evaluation Kit" select CPU_V7 select SUPPORT_SPL + select BOARD_EARLY_INIT_F config TARGET_MA5D4EVK bool "DENX MA5D4EVK Evaluation Kit" diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig index c593dadf68..4757f2496d 100644 --- a/arch/arm/mach-davinci/Kconfig +++ b/arch/arm/mach-davinci/Kconfig @@ -18,6 +18,7 @@ config TARGET_DA850EVM config TARGET_EA20 bool "EA20 board" + select BOARD_LATE_INIT config TARGET_OMAPL138_LCDK bool "OMAPL138 LCDK" diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index 07118fc3df..9bd8ba5eea 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -7,6 +7,7 @@ choice config ARCH_EXYNOS4 bool "Exynos4 SoC family" select CPU_V7 + select BOARD_EARLY_INIT_F help Samsung Exynos4 SoC family are based on ARM Cortex-A9 CPU. There are multiple SoCs in this family including Exynos4210, Exynos4412, @@ -15,6 +16,7 @@ config ARCH_EXYNOS4 config ARCH_EXYNOS5 bool "Exynos5 SoC family" select CPU_V7 + select BOARD_EARLY_INIT_F help Samsung Exynos5 SoC family are based on ARM Cortex-A15 CPU (and Cortex-A7 CPU in big.LITTLE configuration). There are multiple SoCs @@ -23,6 +25,7 @@ config ARCH_EXYNOS5 config ARCH_EXYNOS7 bool "Exynos7 SoC family" select ARM64 + select BOARD_EARLY_INIT_F help Samsung Exynos7 SoC family are based on ARM Cortex-A57 CPU or Cortex-A53 CPU (and some in a big.LITTLE configuration). There are diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig index 9c24921b5c..ddfae8c4b4 100644 --- a/arch/arm/mach-kirkwood/Kconfig +++ b/arch/arm/mach-kirkwood/Kconfig @@ -33,6 +33,7 @@ config TARGET_ICONNECT config TARGET_KM_KIRKWOOD bool "KM_KIRKWOOD Board" + select BOARD_LATE_INIT config TARGET_NET2BIG_V2 bool "LaCie 2Big Network v2 NAS Board" diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig index 40476dc421..53117c4296 100644 --- a/arch/arm/mach-mvebu/Kconfig +++ b/arch/arm/mach-mvebu/Kconfig @@ -8,6 +8,8 @@ config ARMADA_32BIT select SPL_DM_SEQ_ALIAS select SPL_OF_CONTROL select SPL_SIMPLE_BUS + select BOARD_EARLY_INIT_F + select ARCH_MISC_INIT config ARMADA_64BIT bool @@ -86,6 +88,7 @@ config TARGET_DB_88F6820_AMC config TARGET_MVEBU_ARMADA_8K bool "Support Armada 7k/8k platforms" select ARMADA_8K + select BOARD_LATE_INIT config TARGET_DB_MV784MP_GP bool "Support db-mv784mp-gp" @@ -101,6 +104,7 @@ config TARGET_MAXBCM config TARGET_THEADORABLE bool "Support theadorable Armada XP" + select BOARD_LATE_INIT if USB select MV78260 endchoice diff --git a/arch/arm/mach-omap2/am33xx/Kconfig b/arch/arm/mach-omap2/am33xx/Kconfig index 56c44062c4..ae1c3cf5ed 100644 --- a/arch/arm/mach-omap2/am33xx/Kconfig +++ b/arch/arm/mach-omap2/am33xx/Kconfig @@ -6,6 +6,7 @@ choice config TARGET_AM335X_EVM bool "Support am335x_evm" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -20,6 +21,7 @@ config TARGET_AM335X_EVM config TARGET_AM335X_BALTOS bool "Support am335x_baltos" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO @@ -32,18 +34,21 @@ config TARGET_AM335X_IGEP0033 config TARGET_AM335X_SHC bool "Support am335x based shc board from bosch" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO config TARGET_AM335X_SL50 bool "Support am335x_sl50" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO config TARGET_BAV335X bool "Support bav335x" + select BOARD_LATE_INIT select DM select DM_SERIAL help @@ -96,6 +101,7 @@ config SPL_I2C_SUPPORT config TARGET_AM43XX_EVM bool "Support am43xx_evm" + select BOARD_LATE_INIT select TI_I2C_BOARD_DETECT help This option specifies support for the AM43xx diff --git a/arch/arm/mach-omap2/config.mk b/arch/arm/mach-omap2/config.mk index 20b555357a..af455366ed 100644 --- a/arch/arm/mach-omap2/config.mk +++ b/arch/arm/mach-omap2/config.mk @@ -6,34 +6,52 @@ include $(srctree)/arch/arm/mach-omap2/config_secure.mk ifdef CONFIG_SPL_BUILD -ifeq ($(CONFIG_TI_SECURE_DEVICE),y) +ifeq ($(CONFIG_TI_SECURE_DEVICE),y) # Refer to README.ti-secure for more info +# On DRA7xx/AM57xx: +# +# For booting spl from SD/MMC/eMMC use +# u-boot-spl_HS_MLO # -# For booting from SPI use -# u-boot-spl_HS_SPI_X-LOADER to program flash +# For booting spl over UART or USB use +# u-boot-spl_HS_ULO # +# For booting spl from QSPI or NOR use +# u-boot-spl_HS_X-LOADER +ifeq ($(CONFIG_OMAP54XX),y) +ALL-y += u-boot-spl_HS_MLO +ALL-y += u-boot-spl_HS_ULO +ALL-y += u-boot-spl_HS_X-LOADER +endif # On AM43XX: # +# For booting spl from SPI flash use +# u-boot-spl_HS_SPI_X-LOADER +# # For booting spl from all other media use # u-boot-spl_HS_ISSW -# +ifeq ($(CONFIG_AM43XX),y) +ALL-y += u-boot-spl_HS_SPI_X-LOADER +ALL-y += u-boot-spl_HS_ISSW +endif # On AM33XX: # -# For booting spl from NAND flash use +# For booting spl from SPI flash use +# u-boot-spl_HS_SPI_X-LOADER +# +# For booting spl from NAND flash or raw SD/MMC/eMMC use # u-boot-spl_HS_X-LOADER # -# For booting spl from SD/MMC/eMMC media use +# For booting spl from a filesystem on SD/MMC/eMMC use # u-boot-spl_HS_MLO # # For booting spl over UART, USB, or Ethernet use # u-boot-spl_HS_2ND -# -# Refer to README.ti-secure for more info -# -ALL-y += u-boot-spl_HS_ISSW +ifeq ($(CONFIG_AM33XX),y) ALL-y += u-boot-spl_HS_SPI_X-LOADER ALL-y += u-boot-spl_HS_X-LOADER ALL-y += u-boot-spl_HS_MLO ALL-y += u-boot-spl_HS_2ND +endif else ALL-y += MLO ifeq ($(CONFIG_AM33XX),y) diff --git a/arch/arm/mach-omap2/omap3/Kconfig b/arch/arm/mach-omap2/omap3/Kconfig index 7d884a237b..4a7957fde8 100644 --- a/arch/arm/mach-omap2/omap3/Kconfig +++ b/arch/arm/mach-omap2/omap3/Kconfig @@ -96,9 +96,11 @@ config TARGET_TRICORDER config TARGET_MCX bool "MCX" + select BOARD_LATE_INIT config TARGET_OMAP3_LOGIC bool "OMAP3 Logic" + select BOARD_LATE_INIT select DM select DM_SERIAL select DM_GPIO diff --git a/arch/arm/mach-omap2/omap5/Kconfig b/arch/arm/mach-omap2/omap5/Kconfig index 242d1ee928..c5edc7c98d 100644 --- a/arch/arm/mach-omap2/omap5/Kconfig +++ b/arch/arm/mach-omap2/omap5/Kconfig @@ -51,11 +51,13 @@ config TARGET_OMAP5_UEVM config TARGET_DRA7XX_EVM bool "TI DRA7XX" + select BOARD_LATE_INIT select TI_I2C_BOARD_DETECT select PHYS_64BIT config TARGET_AM57XX_EVM bool "AM57XX" + select BOARD_LATE_INIT select TI_I2C_BOARD_DETECT endchoice diff --git a/arch/arm/mach-rockchip/rk3036/Kconfig b/arch/arm/mach-rockchip/rk3036/Kconfig index 9263608e8a..c63db343e2 100644 --- a/arch/arm/mach-rockchip/rk3036/Kconfig +++ b/arch/arm/mach-rockchip/rk3036/Kconfig @@ -2,9 +2,11 @@ if ROCKCHIP_RK3036 config TARGET_EVB_RK3036 bool "EVB_RK3036" + select BOARD_LATE_INIT config TARGET_KYLIN_RK3036 bool "KYLIN_RK3036" + select BOARD_LATE_INIT config SYS_SOC default "rockchip" diff --git a/arch/arm/mach-rockchip/rk3288/Kconfig b/arch/arm/mach-rockchip/rk3288/Kconfig index 54545f378c..35d8dbfc7e 100644 --- a/arch/arm/mach-rockchip/rk3288/Kconfig +++ b/arch/arm/mach-rockchip/rk3288/Kconfig @@ -2,6 +2,7 @@ if ROCKCHIP_RK3288 config TARGET_FIREFLY_RK3288 bool "Firefly-RK3288" + select BOARD_LATE_INIT help Firefly is a RK3288-based development board with 2 USB ports, HDMI, VGA, micro-SD card, audio, WiFi and Gigabit Ethernet, It @@ -10,6 +11,7 @@ config TARGET_FIREFLY_RK3288 config TARGET_EVB_RK3288 bool "Evb-RK3288" + select BOARD_LATE_INIT help EVB-RK3288 is a RK3288-based development board with 2 USB ports, HDMI, VGA, micro-SD card, audio, WiFi and Gigabit Ethernet, It @@ -18,6 +20,7 @@ config TARGET_EVB_RK3288 config TARGET_FENNEC_RK3288 bool "Fennec-RK3288" + select BOARD_LATE_INIT help Fennec is a RK3288-based development board with 2 USB ports, HDMI, micro-SD card, audio, WiFi and Gigabit Ethernet. It also @@ -26,6 +29,7 @@ config TARGET_FENNEC_RK3288 config TARGET_POPMETAL_RK3288 bool "PopMetal-RK3288" + select BOARD_LATE_INIT help PopMetal is a RK3288-based development board with 3 USB host ports, 1 micro USB OTG port, HDMI, VGA, micro-SD card, audio, WiFi, Gigabit @@ -35,6 +39,7 @@ config TARGET_POPMETAL_RK3288 config TARGET_MINIARM_RK3288 bool "miniarm-RK3288" + select BOARD_LATE_INIT help Miniarm is a RK3288-based development board with 2 USB ports, HDMI, micro-SD card, audio, Gigabit Ethernet. It also includes on-board @@ -43,6 +48,7 @@ config TARGET_MINIARM_RK3288 config TARGET_CHROMEBOOK_JERRY bool "Google/Rockchip Veyron-Jerry Chromebook" + select BOARD_LATE_INIT help Jerry is a RK3288-based clamshell device with 2 USB 3.0 ports, HDMI, an 11.9 inch EDP display, micro-SD card, touchpad and @@ -51,6 +57,7 @@ config TARGET_CHROMEBOOK_JERRY config TARGET_CHROMEBIT_MICKEY bool "Google/Rockchip Veyron-Mickey Chromebit" + select BOARD_LATE_INIT help Mickey is a small RK3288-based device with one USB 3.0 port, HDMI and WiFi. It has a separate power port and is designed to connect @@ -60,6 +67,7 @@ config TARGET_CHROMEBIT_MICKEY config TARGET_CHROMEBOOK_MINNIE bool "Google/Rockchip Veyron-Minnie Chromebook" + select BOARD_LATE_INIT help Minnie is a RK3288-based convertible clamshell device with 2 USB 3.0 ports, micro HDMI, a 10.1-inch 1280x800 EDP display, micro-SD card, @@ -70,6 +78,7 @@ config TARGET_CHROMEBOOK_MINNIE config TARGET_ROCK2 bool "Radxa Rock 2" + select BOARD_LATE_INIT help Rock 2 is a SOM and base-board combination based on RK3288. It includes Ethernet, HDMI, 3 USB, micro-SD, audio, SATA, WiFi and diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig index 6991af8775..df9e8d4213 100644 --- a/arch/arm/mach-socfpga/Kconfig +++ b/arch/arm/mach-socfpga/Kconfig @@ -64,6 +64,7 @@ config TARGET_SOCFPGA_IS1 config TARGET_SOCFPGA_SAMTEC_VINING_FPGA bool "samtec VIN|ING FPGA (Cyclone V)" + select BOARD_LATE_INIT select TARGET_SOCFPGA_CYCLONE5 config TARGET_SOCFPGA_SR1500 diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index 5bdbc700a4..c9f2380f4d 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -37,6 +37,7 @@ config TEGRA_COMMON select MISC select OF_CONTROL select VIDCONSOLE_AS_LCD if DM_VIDEO + select BOARD_EARLY_INIT_F config TEGRA_NO_BPMP bool "Tegra common options for SoCs without BPMP" diff --git a/arch/arm/mach-tegra/tegra114/Kconfig b/arch/arm/mach-tegra/tegra114/Kconfig index 1047b9227f..5f0f909dd3 100644 --- a/arch/arm/mach-tegra/tegra114/Kconfig +++ b/arch/arm/mach-tegra/tegra114/Kconfig @@ -6,6 +6,7 @@ choice config TARGET_DALMORE bool "NVIDIA Tegra114 Dalmore evaluation board" + select BOARD_LATE_INIT endchoice diff --git a/arch/arm/mach-tegra/tegra124/Kconfig b/arch/arm/mach-tegra/tegra124/Kconfig index df77462283..ca96a263b7 100644 --- a/arch/arm/mach-tegra/tegra124/Kconfig +++ b/arch/arm/mach-tegra/tegra124/Kconfig @@ -6,12 +6,14 @@ choice config TARGET_JETSON_TK1 bool "NVIDIA Tegra124 Jetson TK1 board" + select BOARD_LATE_INIT select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT select ARCH_SUPPORT_PSCI config TARGET_CEI_TK1_SOM bool "Colorado Engineering Inc Tegra124 TK1-som board" + select BOARD_LATE_INIT select CPU_V7_HAS_NONSEC if !SPL_BUILD select CPU_V7_HAS_VIRT if !SPL_BUILD help @@ -23,6 +25,7 @@ config TARGET_CEI_TK1_SOM config TARGET_NYAN_BIG bool "Google/NVIDIA Nyan-big Chromebook" + select BOARD_LATE_INIT help Nyan Big is a Tegra124 clamshell board that is very similar to venice2, but it has a different panel, the sdcard CD and WP @@ -32,6 +35,7 @@ config TARGET_NYAN_BIG config TARGET_VENICE2 bool "NVIDIA Tegra124 Venice2" + select BOARD_LATE_INIT endchoice diff --git a/arch/arm/mach-tegra/tegra186/Kconfig b/arch/arm/mach-tegra/tegra186/Kconfig index 97cf23f31f..b2e53b58ca 100644 --- a/arch/arm/mach-tegra/tegra186/Kconfig +++ b/arch/arm/mach-tegra/tegra186/Kconfig @@ -9,6 +9,7 @@ choice config TARGET_P2771_0000 bool "NVIDIA Tegra186 P2771-0000 board" + select BOARD_LATE_INIT help P2771-0000 is a P3310 CPU board married to a P2597 I/O board. The combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB diff --git a/arch/arm/mach-tegra/tegra20/Kconfig b/arch/arm/mach-tegra/tegra20/Kconfig index 1bb8dff5b2..99445a4f26 100644 --- a/arch/arm/mach-tegra/tegra20/Kconfig +++ b/arch/arm/mach-tegra/tegra20/Kconfig @@ -6,33 +6,43 @@ choice config TARGET_HARMONY bool "NVIDIA Tegra20 Harmony evaluation board" + select BOARD_LATE_INIT config TARGET_MEDCOM_WIDE bool "Avionic Design Medcom-Wide board" + select BOARD_LATE_INIT config TARGET_PAZ00 bool "Paz00 board" + select BOARD_LATE_INIT config TARGET_PLUTUX bool "Avionic Design Plutux board" + select BOARD_LATE_INIT config TARGET_SEABOARD bool "NVIDIA Seaboard" + select BOARD_LATE_INIT config TARGET_TEC bool "Avionic Design Tamonten Evaluation Carrier" + select BOARD_LATE_INIT config TARGET_TRIMSLICE bool "Compulab TrimSlice board" + select BOARD_LATE_INIT config TARGET_VENTANA bool "NVIDIA Tegra20 Ventana evaluation board" + select BOARD_LATE_INIT config TARGET_WHISTLER bool "NVIDIA Tegra20 Whistler evaluation board" + select BOARD_LATE_INIT config TARGET_COLIBRI_T20 bool "Toradex Colibri T20 board" + select BOARD_LATE_INIT endchoice diff --git a/arch/arm/mach-tegra/tegra210/Kconfig b/arch/arm/mach-tegra/tegra210/Kconfig index 055fb124d8..3637473051 100644 --- a/arch/arm/mach-tegra/tegra210/Kconfig +++ b/arch/arm/mach-tegra/tegra210/Kconfig @@ -5,6 +5,7 @@ choice config TARGET_E2220_1170 bool "NVIDIA Tegra210 E2220-1170 board" + select BOARD_LATE_INIT help E2220-1170 is a Tegra210 bringup board with onboard SoC, DRAM, eMMC, SD card slot, HDMI, USB micro-B port, and sockets for various @@ -12,6 +13,7 @@ config TARGET_E2220_1170 config TARGET_P2371_0000 bool "NVIDIA Tegra210 P2371-0000 board" + select BOARD_LATE_INIT help P2371-0000 is a P2581 or P2530 CPU board married to a P2595 I/O board. The combination contains SoC, DRAM, eMMC, SD card slot, @@ -20,6 +22,7 @@ config TARGET_P2371_0000 config TARGET_P2371_2180 bool "NVIDIA Tegra210 P2371-2180 (Jetson TX1) board" + select BOARD_LATE_INIT help P2371-2180 (Jetson TX1 developer kit) is a P2180 CPU board married to a P2597 I/O board. The combination contains SoC, DRAM, eMMC, SD @@ -28,6 +31,7 @@ config TARGET_P2371_2180 config TARGET_P2571 bool "NVIDIA Tegra210 P2571 base board" + select BOARD_LATE_INIT help P2571 is a P2530 married to a P1963 I/O board diff --git a/arch/arm/mach-tegra/tegra30/Kconfig b/arch/arm/mach-tegra/tegra30/Kconfig index e78331e4cb..85b8ce294f 100644 --- a/arch/arm/mach-tegra/tegra30/Kconfig +++ b/arch/arm/mach-tegra/tegra30/Kconfig @@ -6,18 +6,23 @@ choice config TARGET_APALIS_T30 bool "Toradex Apalis T30 board" + select BOARD_LATE_INIT config TARGET_BEAVER bool "NVIDIA Tegra30 Beaver evaluation board" + select BOARD_LATE_INIT config TARGET_CARDHU bool "NVIDIA Tegra30 Cardhu evaluation board" + select BOARD_LATE_INIT config TARGET_COLIBRI_T30 bool "Toradex Colibri T30 board" + select BOARD_LATE_INIT config TARGET_TEC_NG bool "Avionic Design TEC-NG board" + select BOARD_LATE_INIT endchoice |