From e8aff1ac9e064f41b8eac2fef05ae1db494ee41b Mon Sep 17 00:00:00 2001 From: Jan-Simon Möller Date: Wed, 26 Apr 2017 14:13:08 +0200 Subject: Enforce unified tunings across all target boards of AGL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DEFAULTTUNE is a setting that should be defined in the DISTRO. So we do it here. Goal is to have just 3-4 SDKs in the end. We use these levels: - ARM 32bit high: armv7vethf-neon-vfpv4 (=default for ARM 32bit) - ARM 32bit medium: armv7athf-neon (enabled via DISTRO_FEATURE_append = " agl-medium-arm-compiler") - AARCH64: aarch64 (=aarch64, no other tunings) - x86-64: corei7-64 (=corei7-64 also for qemux86-64) v2: Fix qemu user-mode emulation on x86-64 and adapt qemux86-64 tune flags. See: https://goo.gl/DMaBJ9 Bug-AGL: SPEC-491 Change-Id: Iababbe38a531d546c03f695847651f2d83301b9a Signed-off-by: Jan-Simon Möller Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9299 Reviewed-by: Martin Kelly ci-image-build: Jenkins Job builder account Reviewed-by: Stéphane Desneux Tested-by: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account --- .../conf/distro/include/x86_64-tune.inc | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 meta-agl-distro/conf/distro/include/x86_64-tune.inc (limited to 'meta-agl-distro/conf/distro/include/x86_64-tune.inc') diff --git a/meta-agl-distro/conf/distro/include/x86_64-tune.inc b/meta-agl-distro/conf/distro/include/x86_64-tune.inc new file mode 100644 index 000000000..f1ce97938 --- /dev/null +++ b/meta-agl-distro/conf/distro/include/x86_64-tune.inc @@ -0,0 +1,54 @@ +# DEFAULTTUNE overrides for AGL on x86-64 + +# 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 = "corei7-64" + +# 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 :/ +# we should have at least the core2 tunings by default (=qemux86-64) + +# Extra tune features +TUNEVALID[corei7] = "Enable corei7 specific processor optimizations" +TUNE_CCARGS = "${@bb.utils.contains('TUNE_FEATURES', 'corei7', ' -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2', '', d)}" + +# Extra tune selections +AVAILTUNES += "corei7-32" +TUNE_FEATURES_tune-corei7-32 = "${TUNE_FEATURES_tune-x86} corei7" +BASE_LIB_tune-corei7-32 = "lib" +TUNE_PKGARCH_tune-corei7-32 = "corei7-32" +PACKAGE_EXTRA_ARCHS_tune-corei7-32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-32} corei7-32" +QEMU_EXTRAOPTIONS_corei7-32 = " -cpu Nehalem,check=false" +QB_CPU_corei7-32 = "-cpu Nehalem,check=false" +QB_MACHINE_corei7-32 = "-machine q35" + +AVAILTUNES += "corei7-64" +TUNE_FEATURES_tune-corei7-64 = "${TUNE_FEATURES_tune-x86-64} corei7" +BASE_LIB_tune-corei7-64 = "lib64" +TUNE_PKGARCH_tune-corei7-64 = "corei7-64" +PACKAGE_EXTRA_ARCHS_tune-corei7-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} corei7-64" +QEMU_EXTRAOPTIONS_corei7-64 = " -cpu Nehalem,check=false" +QB_CPU_corei7-64 = " -cpu Nehalem,check=false" +QB_MACHINE_corei7-64 = "-machine q35" + +AVAILTUNES += "corei7-64-x32" +TUNE_FEATURES_tune-corei7-64-x32 = "${TUNE_FEATURES_tune-x86-64-x32} corei7" +BASE_LIB_tune-corei7-64-x32 = "libx32" +TUNE_PKGARCH_tune-corei7-64-x32 = "corei7-64-x32" +PACKAGE_EXTRA_ARCHS_tune-corei7-64-x32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64-x32} corei7-64-x32" +QEMU_EXTRAOPTIONS_corei7-64-x32 = " -cpu Nehalem,check=false" +QB_CPU_corei7-64-x32 = "-cpu Nehalem,check=false" +QB_MACHINE_corei7-64-x32 = "-machine q35" + +TUNE_ARCH = "${@bb.utils.contains('TUNE_FEATURES', 'm64', '${X86ARCH64}', '' ,d)}" + +# Bump qemux86-64 up to corei7 +AVAILTUNES += "qemux86-64" +TUNE_FEATURES_tune-qemux86-64 = "${TUNE_FEATURES_tune-x86-64} corei7" +BASE_LIB_tune-qemux86-64 = "lib64" +TUNE_PKGARCH_tune-qemux86-64 = "corei7-64" +PACKAGE_EXTRA_ARCHS_tune-qemux86-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} corei7-64" +QEMU_EXTRAOPTIONS_qemux86-64 = " -cpu Nehalem,check=false" +QB_CPU_qemux86-64 = " -cpu Nehalem,check=false" +QB_MACHINE_qemux86-64 = "-machine q35" -- cgit 1.2.3-korg