diff options
Diffstat (limited to 'meta/conf/machine/include/arm')
-rwxr-xr-x | meta/conf/machine/include/arm/arch-armv6m.inc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/meta/conf/machine/include/arm/arch-armv6m.inc b/meta/conf/machine/include/arm/arch-armv6m.inc new file mode 100755 index 0000000000..68768106c6 --- /dev/null +++ b/meta/conf/machine/include/arm/arch-armv6m.inc @@ -0,0 +1,19 @@ +# Tuning for ARMV6-m defined in ARM v6-M ArchitectureReference Manual +# at https://static.docs.arm.com/ddi0419/d/DDI0419D_armv6m_arm.pdf +DEFAULTTUNE ?= "armv6m" + +TUNEVALID[armv6m] = "Enable instructions for ARMv6-m" +TUNECONFLICTS[armv6m] = "armv4 armv5 armv6 armv7a" + +# Use armv6s-m instead of armv6-m to avoid gcc bug "SVC is not permitted on this architecture". +# SVC is a valid instruction. +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', ' -march=armv6s-m', '', d)}" +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', 'armv6m:', '' ,d)}" + +require conf/machine/include/arm/arch-armv5.inc + +# Little Endian +AVAILTUNES += "armv6m" +ARMPKGARCH_tune-armv6m = "armv6m" +TUNE_FEATURES_tune-armv6m = "armv6m" +PACKAGE_EXTRA_ARCHS_tune-armv6m = "armv6m" |