X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=arch%2Farm%2FKconfig;h=82140efb9984dd0af8af0ee89a09aca867f660d9;hb=eba6589f7e019d8ccb331a84a789b0c4d74f51f6;hp=2c52ff025a2219b7578ceefe3c014705d207a075;hpb=1c124d379dbb78a93495202749efe952fbddba1c;p=platform%2Fkernel%2Fu-boot.git diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 2c52ff0..82140ef 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -74,6 +74,28 @@ config ARM_ASM_UNIFIED config THUMB2_KERNEL bool +config SYS_ARM_CACHE_CP15 + bool "CP15 based cache enabling support" + help + Select this if your processor suports enabling caches by using + CP15 registers. + +config SYS_ARM_MMU + bool "MMU-based Paged Memory Management Support" + select SYS_ARM_CACHE_CP15 + help + Select if you want MMU-based virtualised addressing space + support by paged memory management. + +config SYS_ARM_MPU + bool 'Use the ARM v7 PMSA Compliant MPU' + help + Some ARM systems without an MMU have instead a Memory Protection + Unit (MPU) that defines the type and permissions for regions of + memory. + If your CPU has an MPU then you should choose 'y' here unless you + know that you do not want to use the MPU. + # If set, the workarounds for these ARM errata are applied early during U-Boot # startup. Note that in general these options force the workarounds to be # applied; no CPU-type/version detection exists, unlike the similar options in @@ -86,6 +108,9 @@ config THUMB2_KERNEL # CONFIG_ARM_ERRATA_621766 # CONFIG_ARM_ERRATA_798870 # CONFIG_ARM_ERRATA_801819 +# CONFIG_ARM_CORTEX_A8_CVE_2017_5715 +# CONFIG_ARM_CORTEX_A15_CVE_2017_5715 + config ARM_ERRATA_430973 bool @@ -155,50 +180,74 @@ config ARM_ERRATA_852423 config ARM_ERRATA_855873 bool +config ARM_CORTEX_A8_CVE_2017_5715 + bool + +config ARM_CORTEX_A15_CVE_2017_5715 + bool + config CPU_ARM720T bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_ARM920T bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_ARM926EJS bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_ARM946ES bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_ARM1136 bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_ARM1176 bool select HAS_VBAR select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU -config CPU_V7 +config CPU_V7A bool select HAS_VBAR select HAS_THUMB2 select SYS_CACHE_SHIFT_6 + imply SYS_ARM_MMU config CPU_V7M bool select HAS_THUMB2 select THUMB2_KERNEL select SYS_CACHE_SHIFT_5 + select SYS_ARM_MPU + select SYS_THUMB_BUILD + +config CPU_V7R + bool + select HAS_THUMB2 + select SYS_CACHE_SHIFT_6 + select SYS_ARM_MPU + select SYS_ARM_CACHE_CP15 config CPU_PXA bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config CPU_SA1100 bool select SYS_CACHE_SHIFT_5 + imply SYS_ARM_MMU config SYS_CPU default "arm720t" if CPU_ARM720T @@ -207,7 +256,8 @@ config SYS_CPU default "arm946es" if CPU_ARM946ES default "arm1136" if CPU_ARM1136 default "arm1176" if CPU_ARM1176 - default "armv7" if CPU_V7 + default "armv7" if CPU_V7A + default "armv7" if CPU_V7R default "armv7m" if CPU_V7M default "pxa" if CPU_PXA default "sa1100" if CPU_SA1100 @@ -221,8 +271,9 @@ config SYS_ARM_ARCH default 5 if CPU_ARM946ES default 6 if CPU_ARM1136 default 6 if CPU_ARM1176 - default 7 if CPU_V7 + default 7 if CPU_V7A default 7 if CPU_V7M + default 7 if CPU_V7R default 5 if CPU_PXA default 4 if CPU_SA1100 default 8 if ARM64 @@ -242,9 +293,19 @@ config SYS_CACHELINE_SIZE default 64 if SYS_CACHE_SHIFT_6 default 32 if SYS_CACHE_SHIFT_5 +config SYS_ARCH_TIMER + bool "ARM Generic Timer support" + depends on CPU_V7A || ARM64 + default y if ARM64 + help + The ARM Generic Timer (aka arch-timer) provides an architected + interface to a timer source on an SoC. + It is mandantory for ARMv8 implementation and widely available + on ARMv7 systems. + config ARM_SMCCC bool "Support for ARM SMC Calling Convention (SMCCC)" - depends on CPU_V7 || ARM64 + depends on CPU_V7A || ARM64 select ARM_PSCI_FW help Say Y here if you want to enable ARM SMC Calling Convention. @@ -342,7 +403,7 @@ choice config ARCH_AT91 bool "Atmel AT91" - select SPL_BOARD_INIT if SPL + select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB config TARGET_EDB93XX bool "Support edb93xx" @@ -379,6 +440,7 @@ config ARCH_MVEBU select DM_SERIAL select DM_SPI select DM_SPI_FLASH + select SPI config TARGET_DEVKIT3250 bool "Support devkit3250" @@ -429,11 +491,12 @@ config TARGET_SPEAR600 config TARGET_STV0991 bool "Support stv0991" - select CPU_V7 + select CPU_V7A select DM select DM_SERIAL select DM_SPI select DM_SPI_FLASH + select SPI select SPI_FLASH select PL01X_SERIAL @@ -444,29 +507,6 @@ config TARGET_X600 select SUPPORT_SPL select PL011_SERIAL -config TARGET_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" select CPU_ARM1136 @@ -497,36 +537,36 @@ config ARCH_BCM283X config TARGET_VEXPRESS_CA15_TC2 bool "Support vexpress_ca15_tc2" - select CPU_V7 + select CPU_V7A select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT select PL011_SERIAL config TARGET_VEXPRESS_CA5X2 bool "Support vexpress_ca5x2" - select CPU_V7 + select CPU_V7A select PL011_SERIAL config TARGET_VEXPRESS_CA9X4 bool "Support vexpress_ca9x4" - select CPU_V7 + select CPU_V7A select PL011_SERIAL config TARGET_BCM23550_W1D bool "Support bcm23550_w1d" - select CPU_V7 + select CPU_V7A imply CRC32_VERIFY imply FAT_WRITE config TARGET_BCM28155_AP bool "Support bcm28155_ap" - select CPU_V7 + select CPU_V7A imply CRC32_VERIFY imply FAT_WRITE config TARGET_BCMCYGNUS bool "Support bcmcygnus" - select CPU_V7 + select CPU_V7A imply CRC32_VERIFY imply CMD_HASH imply FAT_WRITE @@ -537,7 +577,7 @@ config TARGET_BCMCYGNUS config TARGET_BCMNSP bool "Support bcmnsp" - select CPU_V7 + select CPU_V7A config TARGET_BCMNS2 bool "Support Broadcom Northstar2" @@ -556,11 +596,12 @@ config ARCH_EXYNOS select DM_SPI select DM_GPIO select DM_KEYBOARD + select SPI imply FAT_WRITE config ARCH_S5PC1XX bool "Samsung S5PC1XX" - select CPU_V7 + select CPU_V7A select DM select DM_SERIAL select DM_GPIO @@ -568,7 +609,7 @@ config ARCH_S5PC1XX config ARCH_HIGHBANK bool "Calxeda Highbank" - select CPU_V7 + select CPU_V7A select PL011_SERIAL config ARCH_INTEGRATOR @@ -579,17 +620,18 @@ config ARCH_INTEGRATOR config ARCH_KEYSTONE bool "TI Keystone" - select CPU_V7 + select CPU_V7A select SUPPORT_SPL select SYS_THUMB_BUILD select CMD_POWEROFF + select SYS_ARCH_TIMER imply CMD_MTDPARTS imply FIT imply CMD_SAVES config ARCH_OMAP2PLUS bool "TI OMAP2+" - select CPU_V7 + select CPU_V7A select SPL_BOARD_INIT if SPL select SPL_STACK_R if SPL select SUPPORT_SPL @@ -597,6 +639,7 @@ config ARCH_OMAP2PLUS config ARCH_MESON bool "Amlogic Meson" + imply DISTRO_DEFAULTS help Support for the Meson SoC family developed by Amlogic Inc., targeted at media players and tablet computers. We currently @@ -625,15 +668,19 @@ config ARCH_MX28 select PL011_SERIAL select SUPPORT_SPL +config ARCH_MX31 + bool "NXP i.MX31 family" + select CPU_ARM1136 + config ARCH_MX7ULP bool "NXP MX7ULP" - select CPU_V7 + select CPU_V7A select ROM_UNIFIED_SECTIONS imply MXC_GPIO config ARCH_MX7 bool "Freescale MX7" - select CPU_V7 + select CPU_V7A select SYS_FSL_HAS_SEC if SECURE_BOOT select SYS_FSL_SEC_COMPAT_4 select SYS_FSL_SEC_LE @@ -643,7 +690,7 @@ config ARCH_MX7 config ARCH_MX6 bool "Freescale MX6" - select CPU_V7 + select CPU_V7A select SYS_FSL_HAS_SEC if SECURE_BOOT select SYS_FSL_SEC_COMPAT_4 select SYS_FSL_SEC_LE @@ -657,10 +704,17 @@ endif config ARCH_MX5 bool "Freescale MX5" - select CPU_V7 + select CPU_V7A select BOARD_EARLY_INIT_F imply MXC_GPIO +config ARCH_OWL + bool "Actions Semi OWL SoCs" + select ARM64 + select DM + select DM_SERIAL + select OF_CONTROL + config ARCH_QEMU bool "QEMU Virtual Platform" select DM @@ -693,14 +747,27 @@ config ARCH_SNAPDRAGON config ARCH_SOCFPGA bool "Altera SOCFPGA family" - select CPU_V7 - select SUPPORT_SPL - select OF_CONTROL - select SPL_OF_CONTROL - select DM - select ENABLE_ARM_SOC_BOOT0_HOOK select ARCH_EARLY_INIT_R select ARCH_MISC_INIT + select CPU_V7A + select DM + select DM_SERIAL + select ENABLE_ARM_SOC_BOOT0_HOOK + select OF_CONTROL + select SPL_LIBCOMMON_SUPPORT + select SPL_LIBDISK_SUPPORT + select SPL_LIBGENERIC_SUPPORT + select SPL_MMC_SUPPORT if DM_MMC + select SPL_NAND_SUPPORT if SPL_NAND_DENALI + select SPL_OF_CONTROL + select SPL_SERIAL_SUPPORT + select SPL_DM_SERIAL + select SPL_SPI_FLASH_SUPPORT if SPL_SPI_SUPPORT + select SPL_SPI_SUPPORT if DM_SPI + select SPL_WATCHDOG_SUPPORT + select SUPPORT_SPL + select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE + select SYS_NS16550 select SYS_THUMB_BUILD imply CMD_MTDPARTS imply CRC32_VERIFY @@ -725,6 +792,7 @@ config ARCH_SUNXI select OF_BOARD_SETUP select OF_CONTROL select OF_SEPARATE + select SPECIFY_CONSOLE_INDEX select SPL_STACK_R if SPL select SPL_SYS_MALLOC_SIMPLE if SPL select SYS_NS16550 @@ -735,6 +803,7 @@ config ARCH_SUNXI select USB_KEYBOARD if DISTRO_DEFAULTS select USE_TINY_PRINTF imply CMD_GPT + imply DISTRO_DEFAULTS imply FAT_WRITE imply OF_LIBFDT_OVERLAY imply PRE_CONSOLE_BUFFER @@ -749,7 +818,7 @@ config ARCH_SUNXI config ARCH_VF610 bool "Freescale Vybrid" - select CPU_V7 + select CPU_V7A select SYS_FSL_ERRATUM_ESDHC111 imply CMD_MTDPARTS imply NAND @@ -757,10 +826,11 @@ config ARCH_VF610 config ARCH_ZYNQ bool "Xilinx Zynq based platform" select BOARD_LATE_INIT - select CPU_V7 + select CPU_V7A select SUPPORT_SPL select OF_CONTROL select SPL_BOARD_INIT if SPL + select BOARD_EARLY_INIT_F if WDT select SPL_OF_CONTROL if SPL select DM select DM_ETH if NET @@ -774,9 +844,19 @@ config ARCH_ZYNQ select CLK select SPL_CLK if SPL select CLK_ZYNQ + select SPI imply CMD_CLK imply FAT_WRITE imply CMD_SPL + imply ARCH_EARLY_INIT_R + +config ARCH_ZYNQMP_R5 + bool "Xilinx ZynqMP R5 based platform" + select CPU_V7R + select OF_CONTROL + select DM + select DM_SERIAL + select CLK config ARCH_ZYNQMP bool "Xilinx ZynqMP based platform" @@ -794,6 +874,7 @@ config ARCH_ZYNQMP config TEGRA bool "NVIDIA Tegra" + imply DISTRO_DEFAULTS imply FAT_WRITE config TARGET_VEXPRESS64_AEMV8A @@ -914,6 +995,7 @@ config TARGET_HIKEY select DM_SERIAL select OF_CONTROL select PL01X_SERIAL + select SPECIFY_CONSOLE_INDEX help Support for HiKey 96boards platform. It features a HI6220 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM. @@ -968,6 +1050,19 @@ config TARGET_LS1012A2G5RDB development platform that supports the QorIQ LS1012A Layerscape Architecture processor. +config TARGET_LS1012AFRWY + bool "Support ls1012afrwy" + select ARCH_LS1012A + select BOARD_LATE_INIT + select ARM64 + imply SCSI + imply SCSI_AHCI + help + Support for Freescale LS1012AFRWY platform. + The LS1012A FRWY board (FRWY) is a high-performance + development platform that supports the QorIQ LS1012A + Layerscape Architecture processor. + config TARGET_LS1012AFRDM bool "Support ls1012afrdm" select ARCH_LS1012A @@ -995,7 +1090,7 @@ config TARGET_LS1088ARDB config TARGET_LS1021AQDS bool "Support ls1021aqds" select BOARD_LATE_INIT - select CPU_V7 + select CPU_V7A select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT select SUPPORT_SPL @@ -1009,7 +1104,7 @@ config TARGET_LS1021AQDS config TARGET_LS1021ATWR bool "Support ls1021atwr" select BOARD_LATE_INIT - select CPU_V7 + select CPU_V7A select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT select SUPPORT_SPL @@ -1022,7 +1117,7 @@ config TARGET_LS1021ATWR config TARGET_LS1021AIOT bool "Support ls1021aiot" select BOARD_LATE_INIT - select CPU_V7 + select CPU_V7A select CPU_V7_HAS_NONSEC select CPU_V7_HAS_VIRT select SUPPORT_SPL @@ -1130,7 +1225,7 @@ config ARCH_UNIPHIER (formerly, System LSI Business Division of Panasonic Corporation) config STM32 - bool "Support STM32" + bool "Support STMicroelectronics STM32 MCU with cortex M" select CPU_V7M select DM select DM_SERIAL @@ -1138,7 +1233,7 @@ config STM32 config ARCH_STI bool "Support STMicrolectronics SoCs" - select CPU_V7 + select CPU_V7A select DM select DM_SERIAL select BLK @@ -1148,6 +1243,30 @@ config ARCH_STI Support for STMicroelectronics STiH407/10 SoC family. This SoC is used on Linaro 96Board STiH410-B2260 +config ARCH_STM32MP + bool "Support STMicroelectronics STM32MP Socs with cortex A" + select ARCH_MISC_INIT + select BOARD_LATE_INIT + select CLK + select DM + select DM_GPIO + select DM_RESET + select DM_SERIAL + select OF_CONTROL + select OF_LIBFDT + select MISC + select PINCTRL + select REGMAP + select SUPPORT_SPL + select SYSCON + select SYSRESET + select SYS_THUMB_BUILD + help + Support for STM32MP SoC family developed by STMicroelectronics, + MPUs based on ARM cortex A core + U-BOOT is running in DDR and SPL support is the unsecure First Stage + BootLoader (FSBL) + config ARCH_ROCKCHIP bool "Support Rockchip SoCs" select OF_CONTROL @@ -1167,14 +1286,15 @@ config ARCH_ROCKCHIP select DM_PWM select DM_REGULATOR select ENABLE_ARM_SOC_BOOT0_HOOK - imply CMD_FASTBOOT - imply FASTBOOT + select SPI + imply DISTRO_DEFAULTS imply FAT_WRITE imply USB_FUNCTION_FASTBOOT imply SPL_SYSRESET imply TPL_SYSRESET imply ADC imply SARADC_ROCKCHIP + imply SYS_NS16550 config TARGET_THUNDERX_88XX bool "Support ThunderX 88xx" @@ -1224,6 +1344,8 @@ source "arch/arm/cpu/armv7/ls102xa/Kconfig" source "arch/arm/mach-imx/mx2/Kconfig" +source "arch/arm/mach-imx/mx3/Kconfig" + source "arch/arm/mach-imx/mx5/Kconfig" source "arch/arm/mach-imx/mx6/Kconfig" @@ -1242,6 +1364,8 @@ source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig" source "arch/arm/mach-orion5x/Kconfig" +source "arch/arm/mach-owl/Kconfig" + source "arch/arm/mach-rmobile/Kconfig" source "arch/arm/mach-meson/Kconfig" @@ -1260,6 +1384,8 @@ source "arch/arm/mach-sti/Kconfig" source "arch/arm/mach-stm32/Kconfig" +source "arch/arm/mach-stm32mp/Kconfig" + source "arch/arm/mach-sunxi/Kconfig" source "arch/arm/mach-tegra/Kconfig" @@ -1270,6 +1396,8 @@ source "arch/arm/cpu/armv7/vf610/Kconfig" source "arch/arm/mach-zynq/Kconfig" +source "arch/arm/mach-zynqmp-r5/Kconfig" + source "arch/arm/cpu/armv7/Kconfig" source "arch/arm/cpu/armv8/zynqmp/Kconfig" @@ -1307,8 +1435,6 @@ source "board/freescale/ls1046ardb/Kconfig" source "board/freescale/ls1012aqds/Kconfig" source "board/freescale/ls1012ardb/Kconfig" source "board/freescale/ls1012afrdm/Kconfig" -source "board/freescale/mx31ads/Kconfig" -source "board/freescale/mx31pdk/Kconfig" source "board/freescale/mx35pdk/Kconfig" source "board/freescale/s32v234evb/Kconfig" source "board/gdsys/a38x/Kconfig" @@ -1317,7 +1443,6 @@ source "board/gumstix/pepper/Kconfig" source "board/h2200/Kconfig" source "board/hisilicon/hikey/Kconfig" source "board/hisilicon/poplar/Kconfig" -source "board/imx31_phycore/Kconfig" source "board/isee/igep003x/Kconfig" source "board/phytec/pcm051/Kconfig" source "board/silica/pengwyn/Kconfig" @@ -1328,12 +1453,14 @@ source "board/spear/spear600/Kconfig" source "board/spear/x600/Kconfig" source "board/st/stv0991/Kconfig" source "board/tcl/sl50/Kconfig" +source "board/ucRobotics/bubblegum_96/Kconfig" source "board/birdland/bav335x/Kconfig" source "board/timll/devkit3250/Kconfig" source "board/toradex/colibri_pxa270/Kconfig" source "board/vscom/baltos/Kconfig" source "board/woodburn/Kconfig" source "board/work-microwave/work_92105/Kconfig" +source "board/xilinx/zynqmp/Kconfig" source "board/zipitz2/Kconfig" source "arch/arm/Kconfig.debug" @@ -1341,7 +1468,7 @@ source "arch/arm/Kconfig.debug" endmenu config SPL_LDSCRIPT - default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if ARCH_MX23 || ARCH_MX28 + default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64