]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blobdiff - arch/Config.in.arm
Revert "arch/arm: add cortex-m7 core"
[coffee/buildroot.git] / arch / Config.in.arm
index c2b79315288d89b278975c305d4af2096ad71c1b..c99a995db2f6d70120b9b488687004344a9fa869 100644 (file)
@@ -59,11 +59,12 @@ config BR2_ARM_CPU_ARMV7A
 config BR2_ARM_CPU_ARMV7M
        bool
 
-config BR2_ARM_CPU_ARMV8
+config BR2_ARM_CPU_ARMV8A
        bool
 
 choice
        prompt "Target Architecture Variant"
+       default BR2_cortex_a53 if BR2_ARCH_IS_64
        default BR2_arm926t
        help
          Specific CPU variant to use
@@ -243,13 +244,32 @@ config BR2_cortex_m4
 endif # !BR2_ARCH_IS_64
 
 comment "armv8 cores"
+config BR2_cortex_a32
+       bool "cortex-A32"
+       depends on !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_ARM
+       select BR2_ARM_CPU_HAS_NEON
+       select BR2_ARM_CPU_HAS_THUMB2
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
+config BR2_cortex_a35
+       bool "cortex-A35"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
 config BR2_cortex_a53
        bool "cortex-A53"
        select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_FP_ARMV8
-       select BR2_ARM_CPU_ARMV8
+       select BR2_ARM_CPU_ARMV8A
        select BR2_ARCH_HAS_MMU_OPTIONAL
 config BR2_cortex_a57
        bool "cortex-A57"
@@ -257,7 +277,7 @@ config BR2_cortex_a57
        select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_FP_ARMV8
-       select BR2_ARM_CPU_ARMV8
+       select BR2_ARM_CPU_ARMV8A
        select BR2_ARCH_HAS_MMU_OPTIONAL
 config BR2_cortex_a57_a53
        bool "cortex-A57/A53 big.LITTLE"
@@ -265,7 +285,7 @@ config BR2_cortex_a57_a53
        select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_FP_ARMV8
-       select BR2_ARM_CPU_ARMV8
+       select BR2_ARM_CPU_ARMV8A
        select BR2_ARCH_HAS_MMU_OPTIONAL
        select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
 config BR2_cortex_a72
@@ -274,7 +294,7 @@ config BR2_cortex_a72
        select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_FP_ARMV8
-       select BR2_ARM_CPU_ARMV8
+       select BR2_ARM_CPU_ARMV8A
        select BR2_ARCH_HAS_MMU_OPTIONAL
        select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
 config BR2_cortex_a72_a53
@@ -283,9 +303,135 @@ config BR2_cortex_a72_a53
        select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
        select BR2_ARM_CPU_HAS_FP_ARMV8
-       select BR2_ARM_CPU_ARMV8
+       select BR2_ARM_CPU_ARMV8A
        select BR2_ARCH_HAS_MMU_OPTIONAL
        select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
+config BR2_cortex_a73
+       bool "cortex-A73"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_cortex_a73_a35
+       bool "cortex-A73/A35 big.LITTLE"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_cortex_a73_a53
+       bool "cortex-A73/A53 big.LITTLE"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_exynos_m1
+       bool "exynos-m1"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
+config BR2_falkor
+       bool "falkor"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_qdf24xx
+       bool "qdf24xx"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
+if BR2_ARCH_IS_64
+config BR2_thunderx
+       bool "thunderx"
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
+config BR2_thunderxt81
+       bool "thunderxt81"
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_thunderxt83
+       bool "thunderxt83"
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_thunderxt88
+       bool "thunderxt88"
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_thunderxt88p1
+       bool "thunderxt88p1"
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+endif # BR2_ARCH_IS_64
+config BR2_xgene1
+       bool "xgene1"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
+
+if BR2_ARCH_IS_64
+comment "armv8.1a cores"
+config BR2_thunderx2t99
+       bool "thunderx2t99"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_thunderx2t99p1
+       bool "thunderx2t99p1"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+config BR2_vulcan
+       bool "vulcan"
+       select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
+       select BR2_ARM_CPU_HAS_FP_ARMV8
+       select BR2_ARM_CPU_ARMV8A
+       select BR2_ARCH_HAS_MMU_OPTIONAL
+       select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+endif # BR2_ARCH_IS_64
 endchoice
 
 config BR2_ARM_ENABLE_NEON
@@ -310,9 +456,9 @@ config BR2_ARM_ENABLE_VFP
 
 choice
        prompt "Target ABI"
-       depends on BR2_arm || BR2_armeb
        default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_VFPV2
        default BR2_ARM_EABI
+       depends on BR2_arm || BR2_armeb
        help
          Application Binary Interface to use. The Application Binary
          Interface describes the calling conventions (how arguments
@@ -570,19 +716,36 @@ config BR2_GCC_TARGET_CPU
        # armv7m
        default "cortex-m3"     if BR2_cortex_m3
        default "cortex-m4"     if BR2_cortex_m4
-       # armv8
+       # armv8a
+       default "cortex-a32"    if BR2_cortex_a32
+       default "cortex-a35"    if BR2_cortex_a35
        default "cortex-a53"    if BR2_cortex_a53
        default "cortex-a57"    if BR2_cortex_a57
        default "cortex-a57.cortex-a53" if BR2_cortex_a57_a53
        default "cortex-a72"    if BR2_cortex_a72
        default "cortex-a72.cortex-a53" if BR2_cortex_a72_a53
+       default "cortex-a73"    if BR2_cortex_a73
+       default "cortex-a73.cortex-a35" if BR2_cortex_a73_a35
+       default "cortex-a73.cortex-a53" if BR2_cortex_a73_a53
+       default "exynos-m1"     if BR2_exynos_m1
+       default "falkor"        if BR2_falkor
+       default "qdf24xx"       if BR2_qdf24xx
+       default "thunderx"      if BR2_thunderx
+       default "thunderxt81"   if BR2_thunderxt81
+       default "thunderxt83"   if BR2_thunderxt83
+       default "thunderxt88"   if BR2_thunderxt88
+       default "thunderxt88p1" if BR2_thunderxt88p1
+       default "xgene1"        if BR2_xgene1
+       # armv8.1a
+       default "thunderx2t99"  if BR2_thunderx2t99
+       default "thunderx2t99p1"        if BR2_thunderx2t99p1
+       default "vulcan"        if BR2_vulcan
 
 config BR2_GCC_TARGET_ABI
        default "aapcs-linux"   if BR2_arm || BR2_armeb
        default "lp64"          if BR2_aarch64 || BR2_aarch64_be
 
 config BR2_GCC_TARGET_FPU
-       depends on BR2_arm || BR2_armeb
        default "vfp"           if BR2_ARM_FPU_VFPV2
        default "vfpv3"         if BR2_ARM_FPU_VFPV3
        default "vfpv3-d16"     if BR2_ARM_FPU_VFPV3D16
@@ -592,6 +755,7 @@ config BR2_GCC_TARGET_FPU
        default "neon-vfpv4"    if BR2_ARM_FPU_NEON_VFPV4
        default "fp-armv8"      if BR2_ARM_FPU_FP_ARMV8
        default "neon-fp-armv8" if BR2_ARM_FPU_NEON_FP_ARMV8
+       depends on BR2_arm || BR2_armeb
 
 config BR2_GCC_TARGET_FLOAT_ABI
        default "soft"          if BR2_ARM_SOFT_FLOAT