From c39f677e6a7142394bb2713181bca69b768e9f9e Mon Sep 17 00:00:00 2001 From: Julien Olivain Date: Sun, 24 Nov 2024 22:30:31 +0100 Subject: [PATCH] arch/arm: add the Cortex-A710 core This commit adds the Cortex-A710 core, which is an implementation of the armv9.0a ISA. See: [1] [2]. This CPU support was added in GCC 12. See [3] [4]. Cortex-A710 support has been added in QEmu in commit [5], first included in v8.2.0. This CPU supports Aarch32 only in EL0 (user-space). This means it's technically possible to compile Aarch32 code targeting. GCC has the support to do so. Since Buildroot recompiles a full system (ATF, Kernel, user-space) this support has limited value. This is why this CPU is limited to 64bit builds only. [1] https://developer.arm.com/Processors/Cortex-A710 [2] https://developer.arm.com/documentation/101800/0201/The-Cortex-A710--core/Cortex-A710--core-features [3] https://gcc.gnu.org/gcc-12/changes.html [4] https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/config/aarch64/aarch64-cores.def;hb=releases/gcc-12.1.0#l163 [5] https://gitlab.com/qemu-project/qemu/-/commit/e3d45c0a895764203f489184d361fe4c74b2cd57 Signed-off-by: Julien Olivain Signed-off-by: Thomas Petazzoni --- arch/Config.in.arm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/Config.in.arm b/arch/Config.in.arm index 68b4dfea26..546ba8070e 100644 --- a/arch/Config.in.arm +++ b/arch/Config.in.arm @@ -506,6 +506,12 @@ config BR2_saphira select BR2_ARCH_NEEDS_GCC_AT_LEAST_8 comment "armv9.0a cores" +config BR2_cortex_a710 + bool "Cortex-A710 (aka matterhorn)" + depends on BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_FP_ARMV8 + select BR2_ARM_CPU_ARMV9A + select BR2_ARCH_NEEDS_GCC_AT_LEAST_12 config BR2_neoverse_n2 bool "neoverse-N2 (aka perseus)" depends on BR2_ARCH_IS_64 @@ -906,6 +912,7 @@ config BR2_GCC_TARGET_CPU # armv8.4a default "saphira" if BR2_saphira # armv9.0a + default "cortex-a710" if BR2_cortex_a710 default "neoverse-n2" if BR2_neoverse_n2 config BR2_GCC_TARGET_ABI