]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/Kconfig
arm: socfpga: stratix10: Enable Stratix10 SoC build
[u-boot] / arch / arm / Kconfig
index 9bd70f4322cfd542ab121bce0ec69c60f81fae7f..5b3746c80bf9be3270283f68d35b38b12de429d4 100644 (file)
@@ -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
@@ -244,7 +295,7 @@ config SYS_CACHELINE_SIZE
 
 config SYS_ARCH_TIMER
        bool "ARM Generic Timer support"
-       depends on CPU_V7 || ARM64
+       depends on CPU_V7A || ARM64
        default y if ARM64
        help
          The ARM Generic Timer (aka arch-timer) provides an architected
@@ -254,7 +305,7 @@ config SYS_ARCH_TIMER
 
 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.
@@ -352,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"
@@ -440,7 +491,7 @@ config TARGET_SPEAR600
 
 config TARGET_STV0991
        bool "Support stv0991"
-       select CPU_V7
+       select CPU_V7A
        select DM
        select DM_SERIAL
        select DM_SPI
@@ -456,13 +507,6 @@ config TARGET_X600
        select SUPPORT_SPL
        select PL011_SERIAL
 
-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
@@ -493,36 +537,46 @@ 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 ARCH_BCMSTB
+       bool "Broadcom BCM7XXX family"
+       select CPU_V7A
+       select DM
+       select OF_CONTROL
+       select OF_PRIOR_STAGE
+       help
+         This enables support for Broadcom ARM-based set-top box
+         chipsets, including the 7445 family of chips.
+
 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
@@ -533,7 +587,7 @@ config TARGET_BCMCYGNUS
 
 config TARGET_BCMNSP
        bool "Support bcmnsp"
-       select CPU_V7
+       select CPU_V7A
 
 config TARGET_BCMNS2
        bool "Support Broadcom Northstar2"
@@ -557,7 +611,7 @@ config ARCH_EXYNOS
 
 config ARCH_S5PC1XX
        bool "Samsung S5PC1XX"
-       select CPU_V7
+       select CPU_V7A
        select DM
        select DM_SERIAL
        select DM_GPIO
@@ -565,7 +619,7 @@ config ARCH_S5PC1XX
 
 config ARCH_HIGHBANK
        bool "Calxeda Highbank"
-       select CPU_V7
+       select CPU_V7A
        select PL011_SERIAL
 
 config ARCH_INTEGRATOR
@@ -576,7 +630,7 @@ 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
@@ -587,7 +641,7 @@ config ARCH_KEYSTONE
 
 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
@@ -624,15 +678,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
@@ -642,7 +700,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
@@ -656,10 +714,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
@@ -692,22 +757,37 @@ 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 SYS_THUMB_BUILD
+       select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
+       select DM
+       select DM_SERIAL
+       select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
+       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_RESET_SUPPORT
+       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 if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
+       select ARM64 if TARGET_SOCFPGA_STRATIX10
        imply CMD_MTDPARTS
        imply CRC32_VERIFY
        imply DM_SPI
        imply DM_SPI_FLASH
        imply FAT_WRITE
-       imply HW_WATCHDOG
        imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
+       select SPL_SEPARATE_BSS if TARGET_SOCFPGA_STRATIX10
 
 config ARCH_SUNXI
        bool "Support sunxi (Allwinner) SoCs"
@@ -750,7 +830,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
@@ -758,7 +838,7 @@ 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
@@ -780,6 +860,15 @@ config ARCH_ZYNQ
        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"
@@ -973,6 +1062,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
@@ -1000,7 +1102,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
@@ -1014,7 +1116,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
@@ -1027,7 +1129,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
@@ -1143,7 +1245,7 @@ config STM32
 
 config ARCH_STI
        bool "Support STMicrolectronics SoCs"
-       select CPU_V7
+       select CPU_V7A
        select DM
        select DM_SERIAL
        select BLK
@@ -1164,6 +1266,7 @@ config ARCH_STM32MP
        select DM_SERIAL
        select OF_CONTROL
        select OF_LIBFDT
+       select MISC
        select PINCTRL
        select REGMAP
        select SUPPORT_SPL
@@ -1196,9 +1299,7 @@ config ARCH_ROCKCHIP
        select DM_REGULATOR
        select ENABLE_ARM_SOC_BOOT0_HOOK
        select SPI
-       imply CMD_FASTBOOT
        imply DISTRO_DEFAULTS
-       imply FASTBOOT
        imply FAT_WRITE
        imply USB_FUNCTION_FASTBOOT
        imply SPL_SYSRESET
@@ -1237,6 +1338,8 @@ source "arch/arm/mach-at91/Kconfig"
 
 source "arch/arm/mach-bcm283x/Kconfig"
 
+source "arch/arm/mach-bcmstb/Kconfig"
+
 source "arch/arm/mach-davinci/Kconfig"
 
 source "arch/arm/mach-exynos/Kconfig"
@@ -1255,6 +1358,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"
@@ -1273,6 +1378,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"
@@ -1303,6 +1410,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"
@@ -1340,7 +1449,6 @@ source "board/freescale/ls1046ardb/Kconfig"
 source "board/freescale/ls1012aqds/Kconfig"
 source "board/freescale/ls1012ardb/Kconfig"
 source "board/freescale/ls1012afrdm/Kconfig"
-source "board/freescale/mx31pdk/Kconfig"
 source "board/freescale/mx35pdk/Kconfig"
 source "board/freescale/s32v234evb/Kconfig"
 source "board/gdsys/a38x/Kconfig"
@@ -1359,6 +1467,7 @@ 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"