summaryrefslogtreecommitdiffstats
path: root/meta-agl-core/conf/distro/include
diff options
context:
space:
mode:
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-12-15 20:55:06 +0100
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-12-18 13:31:20 +0000
commit14cf68a48a2ef95c214e445e96c25f0dd90f7aac (patch)
tree8c976cde5b985d9c02930b17d9337e56adfb9c72 /meta-agl-core/conf/distro/include
parent56d7526475873c456f3155d680789af03a4c9e73 (diff)
Enhance DEFAULTTUNE mechanism
This commit enhances the way we select the DEFAULTTUNE. DEFAULTTUNE in AGL is meant to be set to either corei7-64 for x86-64 aarch64 for 64bit ARM armv7vethf-neon-vfpv4 for 32bit ARM (where applicable) The reason is that we do want to work towards a binary distro and also maximize sstate reuse between platforms. Each and every board having different settings is counter-productive here. The original setting was done in SPEC-491. See this presentation: https://docs.google.com/presentation/d/1_VSGfheItufCCP_rbGBDg3-2miCyh02-yZva6m8cyUE The enhancement is that we introduce a variable 'AGL_DEFAULTTUNE' that a user could override if he really needs to change the defaults. Also we introduce OVERRIDES to help support this mechanism (agldefaulttune, forcedefaulttune). Bug-AGL: SPEC-491 Bug-AGL: SPEC-5014 Bug-AGL: SPEC-5016 Change-Id: Ia8270b6195116151c27d8da427f0456f38ac95b6 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29541 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
Diffstat (limited to 'meta-agl-core/conf/distro/include')
-rw-r--r--meta-agl-core/conf/distro/include/aarch64-tune.inc3
-rw-r--r--meta-agl-core/conf/distro/include/arm-tune.inc10
-rw-r--r--meta-agl-core/conf/distro/include/riscv64-tune.inc3
-rw-r--r--meta-agl-core/conf/distro/include/x86_64-tune.inc3
4 files changed, 11 insertions, 8 deletions
diff --git a/meta-agl-core/conf/distro/include/aarch64-tune.inc b/meta-agl-core/conf/distro/include/aarch64-tune.inc
index bf71369db..4628fcaf2 100644
--- a/meta-agl-core/conf/distro/include/aarch64-tune.inc
+++ b/meta-agl-core/conf/distro/include/aarch64-tune.inc
@@ -4,7 +4,8 @@
# A double inclusion would produce a warning. This include line is just for reference
# include conf/machine/include/arm/arch-armv8.inc
-DEFAULTTUNE:forcevariable = "aarch64"
+AGL_DEFAULTTUNE ?= "aarch64"
+DEFAULTTUNE:agldefaulttune = "${AGL_DEFAULTTUNE}"
# not yet ready
#QB_SYSTEM_NAME ?= "qemu-system-aarch"
diff --git a/meta-agl-core/conf/distro/include/arm-tune.inc b/meta-agl-core/conf/distro/include/arm-tune.inc
index e88f7f398..b3ad64ad7 100644
--- a/meta-agl-core/conf/distro/include/arm-tune.inc
+++ b/meta-agl-core/conf/distro/include/arm-tune.inc
@@ -7,16 +7,16 @@
# include conf/machine/include/arch/arm-armv7-a.inc
# Standard target for 32bit ARM (newer than cortex-a15)
-AGLDEFAULTTUNE = "armv7vethf-neon-vfpv4"
+ARM_DEFAULTTUNE = "armv7vethf-neon-vfpv4"
# for cortex-a8, cortex-a9, cortex-a7 (=rpi 2/3)
-AGLDEFAULTTUNE := "${@bb.utils.contains('DISTRO_FEATURES', 'agl-medium-arm-compiler', 'armv7athf-neon', '${AGLDEFAULTTUNE}', d)}"
+ARM_DEFAULTTUNE := "${@bb.utils.contains('DISTRO_FEATURES', 'agl-medium-arm-compiler', 'armv7athf-neon', '${ARM_DEFAULTTUNE}', d)}"
# for armv6 (=rpi0/1)
-AGLDEFAULTTUNE := "${@bb.utils.contains('DISTRO_FEATURES', 'agl-low-arm-compiler', 'arm1176jzfshf', '${AGLDEFAULTTUNE}', d)}"
+ARM_DEFAULTTUNE := "${@bb.utils.contains('DISTRO_FEATURES', 'agl-low-arm-compiler', 'arm1176jzfshf', '${ARM_DEFAULTTUNE}', d)}"
-DEFAULTTUNE := "${AGLDEFAULTTUNE}"
-DEFAULTTUNE:forcevariable = "${AGLDEFAULTTUNE}"
+AGL_DEFAULTTUNE ?= "${ARM_DEFAULTTUNE}"
+DEFAULTTUNE:agldefaulttune := "${AGL_DEFAULTTUNE}"
QB_SYSTEM_NAME ?= "qemu-system-arm"
QB_DEFAULT_KERNEL ?= "zImage"
diff --git a/meta-agl-core/conf/distro/include/riscv64-tune.inc b/meta-agl-core/conf/distro/include/riscv64-tune.inc
index 1318396fd..981fc4283 100644
--- a/meta-agl-core/conf/distro/include/riscv64-tune.inc
+++ b/meta-agl-core/conf/distro/include/riscv64-tune.inc
@@ -4,4 +4,5 @@
# A double inclusion would produce a warning. This include line is just for reference
# include conf/machine/include/arm/arch-armv8.inc
-DEFAULTTUNE:forcevariable = "riscv64"
+AGL_DEFAULTTUNE ?= "riscv64"
+DEFAULTTUNE:agldefaulttune = "${AGL_DEFAULTTUNE}"
diff --git a/meta-agl-core/conf/distro/include/x86_64-tune.inc b/meta-agl-core/conf/distro/include/x86_64-tune.inc
index bf166e2f8..541b729b6 100644
--- a/meta-agl-core/conf/distro/include/x86_64-tune.inc
+++ b/meta-agl-core/conf/distro/include/x86_64-tune.inc
@@ -3,7 +3,8 @@
# We should not need the tuning include below as the BSP should include the right set already.
# A double inclusion would produce a warning. This include line is just for reference
#include conf/machine/include/tune-corei7.inc
-DEFAULTTUNE:forcevariable = "corei7-64"
+AGL_DEFAULTTUNE ?= "corei7-64"
+DEFAULTTUNE:agldefaulttune = "${AGL_DEFAULTTUNE}"
# shortened copy of tune-corei7.inc due to bug in inclusion for tune-core2.inc
# TUNE_ARCH is using .= x86-64 , if done twice, you get x86-64x86-64 as TUNE_ARCH :/