summaryrefslogtreecommitdiff
path: root/conf/distro/include/arm-defaults.inc
diff options
context:
space:
mode:
Diffstat (limited to 'conf/distro/include/arm-defaults.inc')
-rw-r--r--conf/distro/include/arm-defaults.inc31
1 files changed, 31 insertions, 0 deletions
diff --git a/conf/distro/include/arm-defaults.inc b/conf/distro/include/arm-defaults.inc
new file mode 100644
index 0000000..87f8adb
--- /dev/null
+++ b/conf/distro/include/arm-defaults.inc
@@ -0,0 +1,31 @@
+# This function changes the default tune for machines which
+# are based on armv7a or armv7ve to use common tune value, note
+# that we enforce hard-float which is default on Linux microPlatform.
+# If you have one of those machines which are armv7a or armv7ve but
+# can't support hard-float, please change tune = 'armv7athf' to
+# tune = 'armv7at' below but then this is for your own distro.
+
+def arm_tune_handler(d):
+ features = d.getVar('TUNE_FEATURES', True).split()
+ if 'armv7a' in features or 'armv7ve' in features:
+ tune = 'armv7athf'
+ if 'bigendian' in features:
+ tune += 'b'
+ if 'vfpv3' in features:
+ tune += '-vfpv3'
+ if 'vfpv3d16' in features:
+ tune += '-vfpv3d16'
+ if 'neon' in features:
+ tune += '-neon'
+ if 'vfpv4' in features:
+ tune += '-vfpv4'
+ else:
+ tune = d.getVar('DEFAULTTUNE', True)
+ return tune
+
+DEFAULTTUNE_tdx := "${@arm_tune_handler(d)}"
+DEFAULTTUNE_torizon := "${@arm_tune_handler(d)}"
+
+DISTRO_ARM_INSTRUCTION ?= "thumb"
+DISTRO_ARM_INSTRUCTION_armv5 ?= "arm"
+ARM_INSTRUCTION_SET_tdx ??= "${DISTRO_ARM_INSTRUCTION}"