diff options
| author | Jon Mason <jdmason@kudzu.us> | 2021-08-10 17:36:33 -0400 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-08-13 14:44:06 +0100 |
| commit | dac9318c5a7145bf499bcc2463e21ddcd63c2331 (patch) | |
| tree | e0dbc703159892d24225193f84e5e3e4805e46e3 /meta/conf/machine/include/arm/arch-armv8m-main.inc | |
| parent | 7c88e08e62d526b109f2286f13f9da13e60a8c0f (diff) | |
| download | poky-dac9318c5a7145bf499bcc2463e21ddcd63c2331.tar.gz | |
tune-cortexm*: add support for all Arm Cortex-M processors
Add tune entries for all Arm Cortex-M processors currently supported in
GCC (that are not currently present). The ARMv7 entries were added in
conf/machine/include/ to match the existing Cortex-M and Cortex-A tune
files. The ARMv8 entries were added to conf/machine/include/arm/armv8-m
to match how ARMv8 was done for Cortex-A processor tune files.
(From OE-Core rev: a9ff58f4cc1b45145fc1576c7eacabaea64b7bd4)
Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/conf/machine/include/arm/arch-armv8m-main.inc')
| -rw-r--r-- | meta/conf/machine/include/arm/arch-armv8m-main.inc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/meta/conf/machine/include/arm/arch-armv8m-main.inc b/meta/conf/machine/include/arm/arch-armv8m-main.inc new file mode 100644 index 0000000000..27f552b2d7 --- /dev/null +++ b/meta/conf/machine/include/arm/arch-armv8m-main.inc | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | # | ||
| 2 | # Defaults for ARMv8-m.main | ||
| 3 | # | ||
| 4 | DEFAULTTUNE ?= "armv8m-main" | ||
| 5 | |||
| 6 | require conf/machine/include/arm/arch-armv8m-base.inc | ||
| 7 | |||
| 8 | TUNEVALID[armv8m-main] = "Enable instructions for ARMv8-m.main" | ||
| 9 | TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8m-main', ' -march=armv8-m.main${MARCH_DSP}${MARCH_FPU}', '', d)}" | ||
| 10 | MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8m-main', 'armv8m-main:', '', d)}" | ||
| 11 | |||
| 12 | TUNECONFLICTS[armv8m-main] = "armv4 armv5 armv6 armv7a" | ||
| 13 | |||
| 14 | # FIXME - below taken from meta/conf/machine/include/arm/arch-armv5-dsp.inc and should be put into something more generic | ||
| 15 | TUNEVALID[dsp] = "ARM DSP functionality" | ||
| 16 | ARMPKGSFX_DSP = "${@bb.utils.contains('TUNE_FEATURES', [ 'dsp' ], 'e', '', d)}" | ||
| 17 | MARCH_DSP = "${@bb.utils.contains('TUNE_FEATURES', [ 'dsp' ], '+dsp', '+nodsp', d)}" | ||
| 18 | |||
| 19 | # FIXME - Below belongs in meta/conf/machine/include/arm/feature-arm-neon.inc | ||
| 20 | TUNEVALID[vfpv5spd16] = "Enable Vector Floating Point Version 5, Single Precision. with 16 registers (fpv5-sp-d16) unit." | ||
| 21 | TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv5spd16', 'fpv5-sp-d16', '', d)}" | ||
| 22 | MARCH_FPU = "${@bb.utils.contains('TUNE_FEATURES', [ 'vfpv5spd16' ], '+fp', '+nofp', d)}" | ||
| 23 | |||
| 24 | AVAILTUNES += "armv8m-main armv8m-mainearmv8m-main-vfpv5spd16 armv8m-maine-vfpv5spd16" | ||
| 25 | ARMPKGARCH:tune-armv8m-main = "armv8m-main" | ||
| 26 | ARMPKGARCH:tune-armv8m-maine = "armv8m-main" | ||
| 27 | ARMPKGARCH:tune-armv8m-main-vfpv5spd16 = "armv8m-main" | ||
| 28 | ARMPKGARCH:tune-armv8m-maine-vfpv5spd16 = "armv8m-main" | ||
| 29 | TUNE_FEATURES:tune-armv8m-main = "armv8m-main" | ||
| 30 | TUNE_FEATURES:tune-armv8m-maine = "${TUNE_FEATURES:tune-armv8m-main} dsp" | ||
| 31 | TUNE_FEATURES:tune-armv8m-main-vfpv5spd16 = "${TUNE_FEATURES:tune-armv8m-main} vfpv5spd16" | ||
| 32 | TUNE_FEATURES:tune-armv8m-maine-vfpv5spd16 = "${TUNE_FEATURES:tune-armv8m-main-vfpv5spd16} dsp" | ||
| 33 | PACKAGE_EXTRA_ARCHS:tune-armv8m-main = "armv8m-main" | ||
| 34 | PACKAGE_EXTRA_ARCHS:tune-armv8m-maine = "${PACKAGE_EXTRA_ARCHS:tune-armv8m-main} armv8m-maine" | ||
| 35 | PACKAGE_EXTRA_ARCHS:tune-armv8m-main-vfpv5spd16 = "${PACKAGE_EXTRA_ARCHS:tune-armv8m-main} armv8m-main-fpv5-spd16" | ||
| 36 | PACKAGE_EXTRA_ARCHS:tune-armv8m-maine-vfpv5spd16 = "${PACKAGE_EXTRA_ARCHS:tune-armv8m-main} armv8m-maine-fpv5-spd16" | ||
