Merge tag 'u-boot-atmel-fixes-2020.07-a' of https://gitlab.denx.de/u-boot/custodians...
[oweals/u-boot.git] / arch / arm / Kconfig
index 78cc79a235f3972a025d48dd1fafe477a5f00e0c..21df1c415f58897caa6575c14057612669d6a9d1 100644 (file)
@@ -340,6 +340,34 @@ config SYS_CACHELINE_SIZE
        default 64 if SYS_CACHE_SHIFT_6
        default 32 if SYS_CACHE_SHIFT_5
 
+choice
+       prompt "Select the ARM data write cache policy"
+       default SYS_ARM_CACHE_WRITETHROUGH if TARGET_BCMCYGNUS || \
+                                             TARGET_BCMNSP || CPU_PXA || RZA1
+       default SYS_ARM_CACHE_WRITEBACK
+
+config SYS_ARM_CACHE_WRITEBACK
+       bool "Write-back (WB)"
+       help
+         A write updates the cache only and marks the cache line as dirty.
+         External memory is updated only when the line is evicted or explicitly
+         cleaned.
+
+config SYS_ARM_CACHE_WRITETHROUGH
+       bool "Write-through (WT)"
+       help
+         A write updates both the cache and the external memory system.
+         This does not mark the cache line as dirty.
+
+config SYS_ARM_CACHE_WRITEALLOC
+       bool "Write allocation (WA)"
+       help
+         A cache line is allocated on a write miss. This means that executing a
+         store instruction on the processor might cause a burst read to occur.
+         There is a linefill to obtain the data for the cache line, before the
+         write is performed.
+endchoice
+
 config ARCH_CPU_INIT
        bool "Enable ARCH_CPU_INIT"
        help
@@ -475,7 +503,7 @@ config TPL_USE_ARCH_MEMSET
 
 config SET_STACK_SIZE
        bool "Enable an option to set max stack size that can be used"
-       default y if ARCH_VERSAL || ARCH_ZYNQMP
+       default y if ARCH_VERSAL || ARCH_ZYNQMP || ARCH_ZYNQ
        help
          This will enable an option to set max stack size that can be
          used by U-Boot.
@@ -484,6 +512,7 @@ config STACK_SIZE
        hex "Define max stack size that can be used by U-Boot"
        depends on SET_STACK_SIZE
        default 0x4000000 if ARCH_VERSAL || ARCH_ZYNQMP
+       default 0x1000000 if ARCH_ZYNQ
        help
          Define Max stack size that can be used by U-Boot so that the
          initrd_high will be calculated as base stack pointer minus this
@@ -524,7 +553,7 @@ config ARCH_DAVINCI
        help
          Support for TI's DaVinci platform.
 
-config KIRKWOOD
+config ARCH_KIRKWOOD
        bool "Marvell Kirkwood"
        select ARCH_MISC_INIT
        select BOARD_EARLY_INIT_F
@@ -547,7 +576,7 @@ config TARGET_APF27
        select CPU_ARM926EJS
        select SUPPORT_SPL
 
-config ORION5X
+config ARCH_ORION5X
        bool "Marvell Orion"
        select CPU_ARM926EJS
 
@@ -598,15 +627,6 @@ config TARGET_X600
        select PL011_SERIAL
        select SUPPORT_SPL
 
-config TARGET_WOODBURN
-       bool "Support woodburn"
-       select CPU_ARM1136
-
-config TARGET_WOODBURN_SD
-       bool "Support woodburn_sd"
-       select CPU_ARM1136
-       select SUPPORT_SPL
-
 config TARGET_FLEA3
        bool "Support flea3"
        select CPU_ARM1136
@@ -633,6 +653,12 @@ config ARCH_BCM63158
        select OF_CONTROL
        imply CMD_DM
 
+config ARCH_BCM68360
+       bool "Broadcom BCM68360 family"
+       select DM
+       select OF_CONTROL
+       imply CMD_DM
+
 config ARCH_BCM6858
        bool "Broadcom BCM6858 family"
        select DM
@@ -765,6 +791,7 @@ config ARCH_OMAP2PLUS
 config ARCH_MESON
        bool "Amlogic Meson"
        imply DISTRO_DEFAULTS
+       imply DM_RNG
        help
          Support for the Meson SoC family developed by Amlogic Inc.,
          targeted at media players and tablet computers. We currently
@@ -772,7 +799,6 @@ config ARCH_MESON
 
 config ARCH_MEDIATEK
        bool "MediaTek SoCs"
-       select BINMAN
        select DM
        select OF_CONTROL
        select SPL_DM if SPL
@@ -877,10 +903,13 @@ config ARCH_MX5
 
 config ARCH_OWL
        bool "Actions Semi OWL SoCs"
-       select ARM64
        select DM
        select DM_SERIAL
+       select OWL_SERIAL
+       select CLK
+       select CLK_OWL
        select OF_CONTROL
+       select SYS_RELOC_GD_ENV_ADDR
        imply CMD_DM
 
 config ARCH_QEMU
@@ -993,6 +1022,8 @@ config ARCH_SUNXI
        select USB_KEYBOARD if DISTRO_DEFAULTS
        select USB_STORAGE if DISTRO_DEFAULTS
        select SPL_USE_TINY_PRINTF
+       select USE_PREBOOT
+       select SYS_RELOC_GD_ENV_ADDR
        imply CMD_DM
        imply CMD_GPT
        imply CMD_UBI if MTD_RAW_NAND
@@ -1111,7 +1142,7 @@ config ARCH_ZYNQMP
        imply MP
        imply DM_USB_GADGET
 
-config TEGRA
+config ARCH_TEGRA
        bool "NVIDIA Tegra"
        imply DISTRO_DEFAULTS
        imply FAT_WRITE
@@ -1131,11 +1162,21 @@ config TARGET_VEXPRESS64_JUNO
        bool "Support Versatile Express Juno Development Platform"
        select ARM64
        select PL01X_SERIAL
+       select DM
+       select OF_CONTROL
+       select OF_BOARD
+       select CLK
+       select DM_SERIAL
+       select ARM_PSCI_FW
+       select PSCI_RESET
+       select DM
+       select BLK
+       select USB
+       select DM_USB
 
 config TARGET_LS2080A_EMU
        bool "Support ls2080a_emu"
        select ARCH_LS2080A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select FSL_DDR_SYNC_REFRESH
@@ -1148,7 +1189,6 @@ config TARGET_LS2080A_EMU
 config TARGET_LS2080A_SIMU
        bool "Support ls2080a_simu"
        select ARCH_LS2080A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select BOARD_LATE_INIT
@@ -1161,7 +1201,6 @@ config TARGET_LS2080A_SIMU
 config TARGET_LS1088AQDS
        bool "Support ls1088aqds"
        select ARCH_LS1088A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1177,7 +1216,6 @@ config TARGET_LS1088AQDS
 config TARGET_LS2080AQDS
        bool "Support ls2080aqds"
        select ARCH_LS2080A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1196,7 +1234,6 @@ config TARGET_LS2080AQDS
 config TARGET_LS2080ARDB
        bool "Support ls2080ardb"
        select ARCH_LS2080A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1215,7 +1252,6 @@ config TARGET_LS2080ARDB
 config TARGET_LS2081ARDB
        bool "Support ls2081ardb"
        select ARCH_LS2080A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select BOARD_LATE_INIT
@@ -1229,7 +1265,6 @@ config TARGET_LS2081ARDB
 config TARGET_LX2160ARDB
        bool "Support lx2160ardb"
        select ARCH_LX2160A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1243,7 +1278,6 @@ config TARGET_LX2160ARDB
 config TARGET_LX2160AQDS
        bool "Support lx2160aqds"
        select ARCH_LX2160A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1366,7 +1400,6 @@ config TARGET_LS1028AQDS
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
        select BOARD_LATE_INIT
-       select ARCH_MISC_INIT
        help
          Support for Freescale LS1028AQDS platform
          The LS1028A Development System (QDS) is a high-performance
@@ -1379,6 +1412,7 @@ config TARGET_LS1028ARDB
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
+       select BOARD_LATE_INIT
        help
          Support for Freescale LS1028ARDB platform
          The LS1028A Development System (RDB) is a high-performance
@@ -1388,7 +1422,6 @@ config TARGET_LS1028ARDB
 config TARGET_LS1088ARDB
        bool "Support ls1088ardb"
        select ARCH_LS1088A
-       select ARCH_MISC_INIT
        select ARM64
        select ARMV8_MULTIENTRY
        select ARCH_SUPPORT_TFABOOT
@@ -1549,9 +1582,11 @@ config ARCH_UNIPHIER
        bool "Socionext UniPhier SoCs"
        select BOARD_LATE_INIT
        select DM
+       select DM_ETH
        select DM_GPIO
        select DM_I2C
        select DM_MMC
+       select DM_MTD
        select DM_RESET
        select DM_SERIAL
        select DM_USB
@@ -1573,7 +1608,7 @@ config ARCH_UNIPHIER
          Support for UniPhier SoC family developed by Socionext Inc.
          (formerly, System LSI Business Division of Panasonic Corporation)
 
-config STM32
+config ARCH_STM32
        bool "Support STMicroelectronics STM32 MCU with cortex M"
        select CPU_V7M
        select DM
@@ -1596,6 +1631,7 @@ config ARCH_STI
 config ARCH_STM32MP
        bool "Support STMicroelectronics STM32MP Socs with cortex A"
        select ARCH_MISC_INIT
+       select ARCH_SUPPORT_TFABOOT
        select BOARD_LATE_INIT
        select CLK
        select DM
@@ -1629,6 +1665,7 @@ config ARCH_STM32MP
 config ARCH_ROCKCHIP
        bool "Support Rockchip SoCs"
        select BLK
+       select BINMAN if !ARM64
        select DM
        select DM_GPIO
        select DM_I2C
@@ -1677,6 +1714,10 @@ config TARGET_DURIAN
          Support for durian platform.
          It has 2GB Sdram, uart and pcie.
 
+config TARGET_PRESIDIO_ASIC
+       bool "Support Cortina Presidio ASIC Platform"
+       select ARM64
+
 endchoice
 
 config ARCH_SUPPORT_TFABOOT
@@ -1737,7 +1778,7 @@ source "arch/arm/mach-keystone/Kconfig"
 
 source "arch/arm/mach-kirkwood/Kconfig"
 
-source "arch/arm/cpu/arm926ejs/lpc32xx/Kconfig"
+source "arch/arm/mach-lpc32xx/Kconfig"
 
 source "arch/arm/mach-mvebu/Kconfig"
 
@@ -1825,9 +1866,11 @@ source "board/Marvell/gplugd/Kconfig"
 source "board/armadeus/apf27/Kconfig"
 source "board/armltd/vexpress/Kconfig"
 source "board/armltd/vexpress64/Kconfig"
+source "board/cortina/presidio-asic/Kconfig"
 source "board/broadcom/bcm23550_w1d/Kconfig"
 source "board/broadcom/bcm28155_ap/Kconfig"
 source "board/broadcom/bcm963158/Kconfig"
+source "board/broadcom/bcm968360bg/Kconfig"
 source "board/broadcom/bcm968580xref/Kconfig"
 source "board/broadcom/bcmcygnus/Kconfig"
 source "board/broadcom/bcmnsp/Kconfig"
@@ -1871,12 +1914,10 @@ 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/toradex/colibri_pxa270/Kconfig"
 source "board/variscite/dart_6ul/Kconfig"
 source "board/vscom/baltos/Kconfig"
-source "board/woodburn/Kconfig"
 source "board/xilinx/Kconfig"
 source "board/xilinx/zynq/Kconfig"
 source "board/xilinx/zynqmp/Kconfig"