armv8/tunes: Add tunes for supported ARMv8a cores

Add tunes for all the ARMv8a cores currently supported in GCC.  This
is: Cortex-A34, Cortex-A73, and Cortex-A73-Cortex-A35.

(From OE-Core rev: fdf6921f145658b1f1c2e7413a2cde6857ddb768)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jon Mason
2020-10-08 10:34:50 -04:00
committed by Richard Purdie
parent 6af96ac134
commit 92b96222b9
3 changed files with 57 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
#
# Tune Settings for Cortex-A34
#
DEFAULTTUNE ?= "cortexa34"
TUNEVALID[cortexa34] = "Enable Cortex-A34 specific processor optimizations"
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa34', ' -mcpu=cortex-a34', '', d)}"
require conf/machine/include/arm/arch-armv8a.inc
# Little Endian base configs
AVAILTUNES += "cortexa34 cortexa34-crypto"
ARMPKGARCH_tune-cortexa34 = "cortexa34"
ARMPKGARCH_tune-cortexa34-crypto = "cortexa34"
TUNE_FEATURES_tune-cortexa34 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa34"
TUNE_FEATURES_tune-cortexa34-crypto = "${TUNE_FEATURES_tune-cortexa34} crypto"
PACKAGE_EXTRA_ARCHS_tune-cortexa34 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa34"
PACKAGE_EXTRA_ARCHS_tune-cortexa34-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa34 cortexa34-crypto"
BASE_LIB_tune-cortexa34 = "lib64"
BASE_LIB_tune-cortexa34-crypto = "lib64"

View File

@@ -0,0 +1,21 @@
#
# Tune Settings for big.LITTLE Cortex-A73 - Cortex-A35
#
DEFAULTTUNE ?= "cortexa73-cortexa35"
TUNEVALID[cortexa73-cortexa35] = "Enable big.LITTLE Cortex-A73.Cortex-A35 specific processor optimizations"
MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", "cortexa73-cortexa35:", "", d)}"
TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa35", " -mcpu=cortex-a73.cortex-a35", "", d)}"
require conf/machine/include/arm/arch-armv8a.inc
# cortexa73.cortexa35 implies crc support
AVAILTUNES += "cortexa73-cortexa35 cortexa73-cortexa35-crypto"
ARMPKGARCH_tune-cortexa73-cortexa35 = "cortexa73-cortexa35"
ARMPKGARCH_tune-cortexa73-cortexa35-crypto = "cortexa73-cortexa35-crypto"
TUNE_FEATURES_tune-cortexa73-cortexa35 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa35"
TUNE_FEATURES_tune-cortexa73-cortexa35-crypto = "${TUNE_FEATURES_tune-cortexa73-cortexa35} crypto"
PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa35 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa73-cortexa35"
PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa35-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa35 cortexa73-cortexa35-crypto"
BASE_LIB_tune-cortexa73-cortexa35 = "lib64"
BASE_LIB_tune-cortexa73-cortexa35-crypto = "lib64"

View File

@@ -0,0 +1,16 @@
#
# Tune Settings for Cortex-A73
#
DEFAULTTUNE ?= "cortexa73"
TUNEVALID[cortexa73] = "Enable Cortex-A73 specific processor optimizations"
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa73', ' -mcpu=cortex-a73', '', d)}"
require conf/machine/include/arm/arch-armv8a.inc
# Little Endian base configs
AVAILTUNES += "cortexa73"
ARMPKGARCH_tune-cortexa73 = "cortexa73"
TUNE_FEATURES_tune-cortexa73 = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa73"
PACKAGE_EXTRA_ARCHS_tune-cortexa73 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73"
BASE_LIB_tune-cortexa73 = "lib64"