tunes/arm: add support for newer arm64 cores

Add tunes for cores that have been present since GCC 14.1.0.
These have been present in meta-arm since mid-July, and have all been
verified with fvp-base and testimage.  Of those present in meta-arm,
arch-armv8-9a.inc, arch-armv9-4a.inc, and arch-armv9-5a.inc have been
excluded from this commit, as there are currently issues compiling some
packages (but still present in meta-arm for those that want to use them
despite those issues).

(From OE-Core rev: 6a447745cc247a3570f02dec9db6fa4b6dc03367)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jon Mason
2025-10-01 13:58:14 -04:00
committed by Richard Purdie
parent cbf72b3696
commit ed94d27977
5 changed files with 67 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
DEFAULTTUNE ?= "armv8-7a"
TUNEVALID[armv8-7a] = "Enable instructions for ARMv8.7-a"
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8-7a', ' -march=armv8.7-a', '', d)}"
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8-7a', 'armv8-7a:', '', d)}"
require conf/machine/include/arm/arch-armv8a.inc
# Little Endian base configs
AVAILTUNES += "armv8-7a"
ARMPKGARCH:tune-armv8-7a ?= "armv8-7a"
TUNE_FEATURES:tune-armv8-7a = "aarch64 armv8-7a"
PACKAGE_EXTRA_ARCHS:tune-armv8-7a = "${PACKAGE_EXTRA_ARCHS:tune-armv8a} armv8-7a"
BASE_LIB:tune-armv8-7a = "lib64"

View File

@@ -0,0 +1,14 @@
DEFAULTTUNE ?= "armv8-8a"
TUNEVALID[armv8-8a] = "Enable instructions for ARMv8.8-a"
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8-8a', ' -march=armv8.8-a', '', d)}"
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8-8a', 'armv8-8a:', '', d)}"
require conf/machine/include/arm/arch-armv8a.inc
# Little Endian base configs
AVAILTUNES += "armv8-8a"
ARMPKGARCH:tune-armv8-8a ?= "armv8-8a"
TUNE_FEATURES:tune-armv8-8a = "aarch64 armv8-8a"
PACKAGE_EXTRA_ARCHS:tune-armv8-8a = "${PACKAGE_EXTRA_ARCHS:tune-armv8a} armv8-8a"
BASE_LIB:tune-armv8-8a = "lib64"

View File

@@ -0,0 +1,13 @@
DEFAULTTUNE ?= "armv9-1a"
TUNEVALID[armv9-1a] = "Enable instructions for ARMv9.1-a"
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv9-1a', ' -march=armv9.1-a', '', d)}"
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv9-1a', 'armv9-1a:', '', d)}"
require conf/machine/include/arm/arch-armv9a.inc
AVAILTUNES += "armv9-1a"
ARMPKGARCH:tune-armv9-1a ?= "armv9-1a"
TUNE_FEATURES:tune-armv9-1a = "aarch64 armv9-1a"
PACKAGE_EXTRA_ARCHS:tune-armv9-1a = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} armv9-1a"
BASE_LIB:tune-armv9-1a = "lib64"

View File

@@ -0,0 +1,13 @@
DEFAULTTUNE ?= "armv9-2a"
TUNEVALID[armv9-2a] = "Enable instructions for ARMv9.2-a"
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv9-2a', ' -march=armv9.2-a', '', d)}"
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv9-2a', 'armv9-2a:', '', d)}"
require conf/machine/include/arm/arch-armv9a.inc
AVAILTUNES += "armv9-2a"
ARMPKGARCH:tune-armv9-2a ?= "armv9-2a"
TUNE_FEATURES:tune-armv9-2a = "aarch64 armv9-2a"
PACKAGE_EXTRA_ARCHS:tune-armv9-2a = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} armv9-2a"
BASE_LIB:tune-armv9-2a = "lib64"

View File

@@ -0,0 +1,13 @@
DEFAULTTUNE ?= "armv9-3a"
TUNEVALID[armv9-3a] = "Enable instructions for ARMv9.3-a"
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv9-3a', ' -march=armv9.3-a', '', d)}"
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv9-3a', 'armv9-3a:', '', d)}"
require conf/machine/include/arm/arch-armv9a.inc
AVAILTUNES += "armv9-3a"
ARMPKGARCH:tune-armv9-3a ?= "armv9-3a"
TUNE_FEATURES:tune-armv9-3a = "aarch64 armv9-3a"
PACKAGE_EXTRA_ARCHS:tune-armv9-3a = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} armv9-3a"
BASE_LIB:tune-armv9-3a = "lib64"