arm: Remove zmx25 board and ARCH_MX25
[platform/kernel/u-boot.git] / arch / arm / Kconfig
index d49f26f..ebb1927 100644 (file)
@@ -9,6 +9,16 @@ config ARM64
        select PHYS_64BIT
        select SYS_CACHE_SHIFT_6
 
+config ARM64_CRC32
+       bool "Enable support for CRC32 instruction"
+       depends on ARM64
+       default y
+       help
+         ARMv8 implements dedicated crc32 instruction for crc32 calculation.
+         This is faster than software crc32 calculation. This instruction may
+         not be present on all ARMv8.0, but is always present on ARMv8.1 and
+         newer.
+
 config POSITION_INDEPENDENT
        bool "Generate position-independent pre-relocation code"
        depends on ARM64 || CPU_V7A
@@ -445,8 +455,8 @@ config ARM_CORTEX_CPU_IS_UP
 
 config USE_ARCH_MEMCPY
        bool "Use an assembly optimized implementation of memcpy"
-       default y
-       depends on !ARM64
+       default y if !ARM64
+       depends on !ARM64 || (ARM64 && (GCC_VERSION >= 90400))
        help
          Enable the generation of an optimized version of memcpy.
          Such an implementation may be faster under some conditions
@@ -455,7 +465,7 @@ config USE_ARCH_MEMCPY
 config SPL_USE_ARCH_MEMCPY
        bool "Use an assembly optimized implementation of memcpy for SPL"
        default y if USE_ARCH_MEMCPY
-       depends on !ARM64 && SPL
+       depends on SPL
        help
          Enable the generation of an optimized version of memcpy.
          Such an implementation may be faster under some conditions
@@ -464,16 +474,43 @@ config SPL_USE_ARCH_MEMCPY
 config TPL_USE_ARCH_MEMCPY
        bool "Use an assembly optimized implementation of memcpy for TPL"
        default y if USE_ARCH_MEMCPY
-       depends on !ARM64 && TPL
+       depends on TPL
        help
          Enable the generation of an optimized version of memcpy.
          Such an implementation may be faster under some conditions
          but may increase the binary size.
 
+config USE_ARCH_MEMMOVE
+       bool "Use an assembly optimized implementation of memmove" if !ARM64
+       default USE_ARCH_MEMCPY if ARM64
+       depends on ARM64
+       help
+         Enable the generation of an optimized version of memmove.
+         Such an implementation may be faster under some conditions
+         but may increase the binary size.
+
+config SPL_USE_ARCH_MEMMOVE
+       bool "Use an assembly optimized implementation of memmove for SPL" if !ARM64
+       default SPL_USE_ARCH_MEMCPY if ARM64
+       depends on SPL && ARM64
+       help
+         Enable the generation of an optimized version of memmove.
+         Such an implementation may be faster under some conditions
+         but may increase the binary size.
+
+config TPL_USE_ARCH_MEMMOVE
+       bool "Use an assembly optimized implementation of memmove for TPL" if !ARM64
+       default TPL_USE_ARCH_MEMCPY if ARM64
+       depends on TPL && ARM64
+       help
+         Enable the generation of an optimized version of memmove.
+         Such an implementation may be faster under some conditions
+         but may increase the binary size.
+
 config USE_ARCH_MEMSET
        bool "Use an assembly optimized implementation of memset"
-       default y
-       depends on !ARM64
+       default y if !ARM64
+       depends on !ARM64 || (ARM64 && (GCC_VERSION >= 90400))
        help
          Enable the generation of an optimized version of memset.
          Such an implementation may be faster under some conditions
@@ -482,7 +519,7 @@ config USE_ARCH_MEMSET
 config SPL_USE_ARCH_MEMSET
        bool "Use an assembly optimized implementation of memset for SPL"
        default y if USE_ARCH_MEMSET
-       depends on !ARM64 && SPL
+       depends on SPL
        help
          Enable the generation of an optimized version of memset.
          Such an implementation may be faster under some conditions
@@ -491,7 +528,7 @@ config SPL_USE_ARCH_MEMSET
 config TPL_USE_ARCH_MEMSET
        bool "Use an assembly optimized implementation of memset for TPL"
        default y if USE_ARCH_MEMSET
-       depends on !ARM64 && TPL
+       depends on TPL
        help
          Enable the generation of an optimized version of memset.
          Such an implementation may be faster under some conditions
@@ -514,11 +551,6 @@ config ARCH_AT91
        select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB
        select SPL_SEPARATE_BSS if SPL
 
-config TARGET_ASPENITE
-       bool "Support aspenite"
-       select CPU_ARM926EJS
-       select GPIO_EXTRA_HEADER
-
 config ARCH_DAVINCI
        bool "TI DaVinci"
        select CPU_ARM926EJS
@@ -568,11 +600,6 @@ config TARGET_STV0991
        select SPI_FLASH
        imply CMD_DM
 
-config TARGET_FLEA3
-       bool "Support flea3"
-       select CPU_ARM1136
-       select GPIO_EXTRA_HEADER
-
 config ARCH_BCM283X
        bool "Broadcom BCM283X family"
        select DM
@@ -615,6 +642,11 @@ config ARCH_BCMSTB
          This enables support for Broadcom ARM-based set-top box
          chipsets, including the 7445 family of chips.
 
+config TARGET_VEXPRESS_CA9X4
+       bool "Support vexpress_ca9x4"
+       select CPU_V7A
+       select PL011_SERIAL
+
 config TARGET_BCMCYGNUS
        bool "Support bcmcygnus"
        select CPU_V7A
@@ -822,13 +854,6 @@ config ARCH_MX23
        select PL011_SERIAL
        select SUPPORT_SPL
 
-config ARCH_MX25
-       bool "NXP MX25"
-       select CPU_ARM926EJS
-       select GPIO_EXTRA_HEADER
-       select MACH_IMX
-       imply MXC_GPIO
-
 config ARCH_MX28
        bool "NXP i.MX28 family"
        select CPU_ARM926EJS
@@ -1696,7 +1721,7 @@ config TARGET_SL28
        select DM_SPI_FLASH
        select DM_ETH
        select DM_MDIO
-       select DM_PCI
+       select PCI
        select DM_RNG
        select DM_RTC
        select DM_SCSI
@@ -1907,6 +1932,50 @@ config TARGET_XENGUEST_ARM64
        select SSCANF
 endchoice
 
+config SUPPORT_PASSING_ATAGS
+       bool "Support pre-devicetree ATAG-based booting"
+       depends on !ARM64
+       imply SETUP_MEMORY_TAGS
+       help
+         Support for booting older Linux kernels, using ATAGs rather than
+         passing a devicetree.  This is option is rarely used, and the
+         semantics are defined at
+         https://www.kernel.org/doc/Documentation/arm/Booting at section 4a.
+
+config SETUP_MEMORY_TAGS
+       bool "Pass memory size information via ATAG"
+       depends on SUPPORT_PASSING_ATAGS
+
+config CMDLINE_TAG
+       bool "Pass Linux kernel cmdline via ATAG"
+       depends on SUPPORT_PASSING_ATAGS
+
+config INITRD_TAG
+       bool "Pass initrd starting point and size via ATAG"
+       depends on SUPPORT_PASSING_ATAGS
+
+config REVISION_TAG
+       bool "Pass system revision via ATAG"
+       depends on SUPPORT_PASSING_ATAGS
+
+config SERIAL_TAG
+       bool "Pass system serial number via ATAG"
+       depends on SUPPORT_PASSING_ATAGS
+
+config STATIC_MACH_TYPE
+       bool "Statically define the Machine ID number"
+       help
+         When booting via ATAGs, enable this option if we know the correct
+         machine ID number to use at compile time.  Some systems will be
+         passed the number dynamically by whatever loads U-Boot.
+
+config MACH_TYPE
+       int "Machine ID number"
+       depends on STATIC_MACH_TYPE
+       help
+         When booting via ATAGs, the machine type must be passed as a number.
+         For the full list see https://www.arm.linux.org.uk/developer/machines
+
 config ARCH_SUPPORT_TFABOOT
        bool
 
@@ -1981,8 +2050,6 @@ source "arch/arm/mach-octeontx2/Kconfig"
 
 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"
@@ -2063,10 +2130,9 @@ source "board/armltd/total_compute/Kconfig"
 
 source "board/bosch/shc/Kconfig"
 source "board/bosch/guardian/Kconfig"
-source "board/CarMediaLab/flea3/Kconfig"
-source "board/Marvell/aspenite/Kconfig"
 source "board/Marvell/octeontx/Kconfig"
 source "board/Marvell/octeontx2/Kconfig"
+source "board/armltd/vexpress/Kconfig"
 source "board/armltd/vexpress64/Kconfig"
 source "board/cortina/presidio-asic/Kconfig"
 source "board/broadcom/bcm963158/Kconfig"