mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-01 21:23:51 -09:00
arch/arm: add the Neoverse-V1 core
This commit adds the Neoverse-V1 core, which is an armv8.4a ISA.
See: [1] [2].
This CPU support was added in GCC 11. See [3] [4] [5].
This CPU supports Aarch64 at all exception levels (EL0 to EL3).
It also supports Aarch32 only in EL0 (user-space). This means it's
technically possible to compile Aarch32 code. 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.
Qemu added neoverse-v1 support in upstream commit [6], first included
in v8.1.0.
[1] https://developer.arm.com/Processors/Neoverse%20V1
[2] https://developer.arm.com/documentation/101427/0102/Functional-description/Introduction/About-the-core
[3] https://gcc.gnu.org/gcc-11/changes.html#arm-targets
[4] https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/config/aarch64/aarch64-cores.def;hb=releases/gcc-11.1.0#l141
[5] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c9d56eb777552ac5ee0c281e1f6e34b6fe929b77
[6] c74138c6c0
Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
@@ -498,6 +498,12 @@ config BR2_tsv110
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
|
||||
comment "armv8.4a cores"
|
||||
config BR2_neoverse_v1
|
||||
bool "neoverse-V1 (aka zeus)"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
config BR2_saphira
|
||||
bool "saphira"
|
||||
depends on BR2_ARCH_IS_64
|
||||
@@ -918,6 +924,7 @@ config BR2_GCC_TARGET_CPU
|
||||
default "neoverse-n1" if BR2_neoverse_n1
|
||||
default "tsv110" if BR2_tsv110
|
||||
# armv8.4a
|
||||
default "neoverse-v1" if BR2_neoverse_v1
|
||||
default "saphira" if BR2_saphira
|
||||
# armv9.0a
|
||||
default "cortex-a710" if BR2_cortex_a710
|
||||
|
||||
Reference in New Issue
Block a user