diff options
author | Jonathan Richardson <jonathan.richardson@broadcom.com> | 2020-08-18 15:42:07 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-08-20 15:30:07 +0100 |
commit | 5731777f62b340d3c0c300da5a0290153e0fc10c (patch) | |
tree | 9a6b5ec7a83978b7c282a1ca9986412fdf3e12a3 /meta/conf/machine | |
parent | 3558af1ce6639cc548bf3be30813d414c7bf7055 (diff) | |
download | poky-5731777f62b340d3c0c300da5a0290153e0fc10c.tar.gz |
cortex-m0plus.inc: Add tuning for cortex M0 plus
Add tuning files for ARM cortex m0 plus and the armv6-m architecture
that it is based on.
(From OE-Core rev: 1a2d05b504c7a6f5a917cb2e7d026e57bb2daf8f)
Signed-off-by: Jonathan Richardson <jonathan.richardson@broadcom.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/conf/machine')
-rwxr-xr-x | meta/conf/machine/include/arm/arch-armv6m.inc | 19 | ||||
-rwxr-xr-x | meta/conf/machine/include/tune-cortex-m0plus.inc | 11 |
2 files changed, 30 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 @@ | |||
1 | # Tuning for ARMV6-m defined in ARM v6-M ArchitectureReference Manual | ||
2 | # at https://static.docs.arm.com/ddi0419/d/DDI0419D_armv6m_arm.pdf | ||
3 | DEFAULTTUNE ?= "armv6m" | ||
4 | |||
5 | TUNEVALID[armv6m] = "Enable instructions for ARMv6-m" | ||
6 | TUNECONFLICTS[armv6m] = "armv4 armv5 armv6 armv7a" | ||
7 | |||
8 | # Use armv6s-m instead of armv6-m to avoid gcc bug "SVC is not permitted on this architecture". | ||
9 | # SVC is a valid instruction. | ||
10 | TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', ' -march=armv6s-m', '', d)}" | ||
11 | MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', 'armv6m:', '' ,d)}" | ||
12 | |||
13 | require conf/machine/include/arm/arch-armv5.inc | ||
14 | |||
15 | # Little Endian | ||
16 | AVAILTUNES += "armv6m" | ||
17 | ARMPKGARCH_tune-armv6m = "armv6m" | ||
18 | TUNE_FEATURES_tune-armv6m = "armv6m" | ||
19 | PACKAGE_EXTRA_ARCHS_tune-armv6m = "armv6m" | ||
diff --git a/meta/conf/machine/include/tune-cortex-m0plus.inc b/meta/conf/machine/include/tune-cortex-m0plus.inc new file mode 100755 index 0000000000..1c7512b061 --- /dev/null +++ b/meta/conf/machine/include/tune-cortex-m0plus.inc | |||
@@ -0,0 +1,11 @@ | |||
1 | DEFAULTTUNE ?= "cortexm0-plus" | ||
2 | require conf/machine/include/arm/arch-armv6m.inc | ||
3 | |||
4 | TUNEVALID[cortexm0-plus] = "Enable Cortex-M0 Plus specific processor optimizations" | ||
5 | TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm0-plus', ' -mcpu=cortex-m0plus', '', d)}" | ||
6 | AVAILTUNES += "cortexm0-plus" | ||
7 | |||
8 | ARMPKGARCH_tune-cortexm0-plus = "cortexm0-plus" | ||
9 | TUNE_FEATURES_tune-cortexm0-plus = "${TUNE_FEATURES_tune-armv6m} cortexm0-plus" | ||
10 | |||
11 | PACKAGE_EXTRA_ARCHS_tune-cortexm0-plus = "${PACKAGE_EXTRA_ARCHS_tune-armv6m} cortexm0-plus" | ||