summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/arm
Commit message (Collapse)AuthorAgeFilesLines
* arm/armv*: add all the Arm tunes in GCC 13.2.0Jon Mason2024-02-0616-0/+257
| | | | | | | (From OE-Core rev: 5af154b66459ac05409619c81dd247c252b673f3) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tunes/sve: Add support for sve2 instructionsJon Mason2024-02-063-3/+8
| | | | | | | | | | Add support for SVE2 and add to 8-2a, as it can be used there. Also, clean up the comments (From OE-Core rev: 683443d57cb18b3b54245b1a09b6e5d2bae4f5d0) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexr52: Add hard-float variantMark Hatle2024-02-031-0/+5
| | | | | | | | | | | Add the ability to specify cortexr52hf to get a version that enables the hard-float calling convention. (From OE-Core rev: be83bc937a76efaead4690237db25459a57673fc) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexr5: Add hard-float variantMark Hatle2024-02-031-0/+5
| | | | | | | | | | | Add the ability to specify cortexr5hf to get a version that enables the hard-float calling convention. (From OE-Core rev: 992149023a896ecb38d07c54fa9ae9df82249a07) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* feature-arm-vfp.inc: Allow hard-float on newer simd targetsMark Hatle2024-02-031-1/+2
| | | | | | | | | | | | | | | | Currently hard-float is dependency upon the special TUNE_CCARGS_MFPU which contains custom -mfpu= values. However, newer 32-bit architectures like cortex-r52 use 'simd' instead. There is no 'simd' entry for -mfpu= according to the GCC manual, it's more or less automatic based on the cpu settings. Add this as an exception to the TUNE_CCARGS_FLOAT setting of hard or softfp. (From OE-Core rev: f122eb8b19528e1192fd0b68b0639d84aa288155) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa78.inc: Add cortexa78 tune, based on cortexa77Mark Hatle2024-02-031-0/+17
| | | | | | | | (From OE-Core rev: 6750384cbb4f8d90c8c32a85db66e8e3344d4ce6) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv8/armv9: Avoid using -march when -mcpu is chosenKhem Raj2024-02-0229-29/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current include logic goes into generic arm v8/v9 architecture tunes and adds corresponding -march option after synthesizing it from various tune fragments, this is fine for a machine which is using armv8/armv9 based tunes but cortex tunes are intentionally using -mcpu option based on selected tune value. So when cortex based default tune is selected for a machine, it will add both -mcpu and -march to the compiler commandline which can result in invalid combinations for this pair in gcc's own logic. This can then result in compiler warnings/errors reporting this e.g. aarch64-yoe-linux-gcc -mcpu=cortex-a72.cortex-a53 -march=armv8-a+crc+crypto -mbranch-protection=standard ... cc1: error: switch '-mcpu=cortex-a72.cortex-a53' conflicts with '-march=armv8-a+crc+crypto' switch and resulted in options '+crc+crypto' being added [-Werror] This is seen in lot of configure test results in glibc 2.39 and the warning is promoted to errors by gcc in some of these checks especially with gcc-14, the logs also show it as warning in other places in configure checks. mcpu option will compute relevant march implicitly as it specifies a cpu implementation and this will be the right value to use, therefore do not specify -march when -mcpu is already describing the cpu. (From OE-Core rev: e64f0c1b6ac5d598a79a21de5f3060f83cb9523e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Ross Burton <ross.burton@arm.com> Cc: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* machine/arch-armv9: remove crc and sve tunes, they are mandatoryRoss Burton2023-12-211-18/+4
| | | | | | | | | | | | | | | | | As per the Arm ARM section A2.3.2, FEAT_CRC32 is mandatory in Armv8.1 onwards, so there's no need to have an explicit optional tune for it. SVE (which was a choice here) and SVE2 (which was not) are both optional with v9.0, but GCC's -march=armv9-a defaults to enabling both SVE and SVE2 on the grounds that there are no implementations of Armv9 that don't support SVE2. This means there's no point having an explicit sve feature as it's enabled out of the box. (From OE-Core rev: 28fabebf812cdf8e76eb508115a4b76944f1e729) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8,arch-armv9: Add sve based tune optionsKhem Raj2023-08-293-3/+18
| | | | | | | | | | | (From OE-Core rev: 3109a48740546f6defc652fa1a6736dc484e6021) (From OE-Core rev: d388bf00314639f82cd9143e786c482731d2719b) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tunes: Add support for sve instructions on armv8/armv9Khem Raj2023-08-291-0/+5
| | | | | | | | | | | | | | This helps in defining correct compiler options and configure options for glibc and overall ABI for toolchain (From OE-Core rev: 58330ce58719bd82530b1143623db7af7a85e897) (From OE-Core rev: 43c980ad688cc4df5a5e687b0f693cf46778ce64) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* machine/arch-arm64: add -mbranch-protection=standardRoss Burton2023-07-141-0/+5
| | | | | | | | | | | | Enable branch protection (PAC/BTI) for all aarch64 builds. This was previously enabled at a global level in the GCC build, but that breaks the gcc test suite. (From OE-Core rev: 8905639d1cdc5ce809cc5ecd9672f5e86bf8a579) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-neoversen2: support tune-neoversen2 base on armv9aRuiqiang Hao2022-09-212-6/+32
| | | | | | | | | | | We supported neoversen2 base on armv8.5a in the past, add tune include for armv9a and support neoversen2 base on armv9a. (From OE-Core rev: 4a2c4cfaaa5a6d7175c81064939e21bcfe3e736a) Signed-off-by: Ruiqiang Hao <Ruiqiang.Hao@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8-4a.inc: add tune include for armv8.4aDmitry Baryshkov2022-04-211-0/+19
| | | | | | | | | | | | | Add tune include for armv8.4a. This adds support only for bare armv8.4a (and for crypto extension). There is no support for additional instructions added by architecture extensions (except the main crypto extension support). (From OE-Core rev: 39743abada4a2459c74831aa78930de5461adee2) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8-2a.inc: fix a typo in TUNEVALID variableDmitry Baryshkov2022-04-211-1/+1
| | | | | | | | | | | Fix a typo in the TUNEVALID[armv8-2a]: It enables instructions for ARMv8.2-a, not just ARMv8-a. (From OE-Core rev: 0a4404c117ef8733713962767c1d2c9f87c2c990) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa72: Fix a misspelt override in PACKAGE_EXTRA_ARCHSLuna Gräfje2022-02-101-1/+1
| | | | | | | | | | | | Without this, the string "${PACKAGE_EXTRA_ARCHS:tune-armv8-crc}" will show up in some bash tasks (notably opkg-arch-config.do_compile which is how I found out about this) which will break things (besides obviously not doing the intended thing of expanding to a list of architectures) (From OE-Core rev: c5142f867aaa3fb6fc134781e2e54ce10eabd530) Signed-off-by: Luna Gräfje <luna.graefje@orbitalsystems.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa73: Introduce cortexa73-crypto tuneKevin Hao2022-01-181-3/+7
| | | | | | | | | | | | The crypto extension is optional for the Cortex-A73 processor, so we shouldn't enable the crypto by default for the cortexa73 tune. Introduce the cortexa73-crypto for the processors which do have the cryptography unit. (From OE-Core rev: c16b31ebd626d8a314264605d0bc5ab008cddd8d) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa72: Drop the redundant cortexa72-crc tuneKevin Hao2022-01-131-9/+5
| | | | | | | | | | | | | We have enabled the crc extension by default for cortexa72 in patch ("tune-cortexa72: Enable the crc extension by default for cortexa72"), then the cortexa72-crc seems redundant. So drop it. We also rename the cortexa72-crc-crypto to cortexa72-crypto. With these changes, it will break the BSPs which used these two tunes, but it should be easy to fix. (From OE-Core rev: 03cebdd7ef923a8ac5c8b7c12c7cefe7ca0158db) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv9a/tune: Add the support for the Neoverse N2 coreKevin Hao2022-01-131-0/+22
| | | | | | | | | | | | | This adds the support for the Neoverse N2 core, even though the Neoverse N2 core implements the Arm v9.0-A architecture, but the support of it in GCC is based on the Arm v8.5-A architecture. Please see the commit 50d9db203bc3 ("aarch64: Add support for Neoverse N2 CPU") in GCC for more detail. (From OE-Core rev: 37597397f03b6b0082a702147dc536ff8b2fa7a3) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8-5a.inc: Add tune include for armv8.5aKevin Hao2022-01-131-0/+19
| | | | | | | | | | This adds support for the armv8.5a architecture and the crypto extension. (From OE-Core rev: 0cb1a6d9cb4c32526d79dad93c8053b3793053f8) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa72: Enable the crc extension by default for cortexa72Kevin Hao2022-01-131-6/+6
| | | | | | | | | | | | | The crc extension is optional for the ARMv8.0 but is mandatory for the cortexa72, so there is no reason not to enable it for the cortexa72 tune. With this change, the cortexa72-crc seems redundant. But we had better to keep it to be compatible with the BSP which already used that tune. (From OE-Core rev: ca50267ab568d2f688844cb7c6cd867ed34168db) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa72: remove crypto for the default cortex-a72Jagadeesh Krishnanjanappa2021-12-081-4/+12
| | | | | | | | | | | | | | | | | | | | The cryptographic unit is optional for the Cortex-A72, but it was included by default previously. This breaks building systems that lack this functionality when using tune-cortexa72.inc. To correct this, add a crypto entry in the tune file. Since CRC is optional for ARMv8.0, do the same thing while we're at it. For platforms that had been happily using tune-cortexa72.inc, a slight degradation of performance will occur using the default. To correct this, simply add: DEFAULTTUNE = "cortexa72-crc-crypto" (From OE-Core rev: 2568d537087adb0b592aa250bf628a7b48c3a9d3) Signed-off-by: Jagadeesh Krishnanjanappa <workjagadeesh@gmail.com> Signed-off-by: Jon Mason <jdmason@kudzu.us> (rewording commit message) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-*: Use more specific DEFAULTTUNEJon Mason2021-09-019-9/+9
| | | | | | | | | | | | These files are using a more generic DEFAULTTUNE in their targeted tune file. This is contrary to what is being done in other tune files, and this changes them to match. It is still possible to use the more generic DEFAULTTUNE in a machine's config file by simply specifying it. (From OE-Core rev: e35205a9803692d72eb92b86d740821c667b527e) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-arm*: Fix bugs with dsp and simd feature include filesJon Mason2021-08-223-2/+3
| | | | | | | | | | | | | Fix bugs found with a duplicate inclusion of feature-arm-simd.inc and dsp not being defined in feature-arm-dsp.inc Found by compiling with DEFAULTTUNE set to 'armv8r' and 'cortexm33' respectively. (From OE-Core rev: eb49c1847bb063fa5707843e0c2632023b341fcf) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexr*: add support for all Arm Cortex-R processorsJon Mason2021-08-2011-0/+152
| | | | | | | | | | | Add tune entries for all Arm Cortex-R processors currently supported in GCC. Also, add the simd feature, which can be used in ARMv7a and ARMv8a, but currently isn't. (From OE-Core rev: 67e582379afa9bff8d585b4c7f1bc65a76d088fb) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-arm*: add better support for gcc march extensionsJon Mason2021-08-2018-27/+37
| | | | | | | | | | | | | | | | | | GCC has the ability to pass extensions to the march parameter, which expand the funcationality of the march. For example "-march=armv7ve+simd" adds SIMD to ARMv7. Currently, there is no way to expand the march setting without modifying each instance, as you can't guarantee the ordering when using the existing TUNE_CCARGS. By introducing two new variables, TUNE_CCARGS_MARCH and TUNE_CCARGS_MARCH_OPT, we can enforce that these two go together. Also, expand existing and create new feature files that use these variables to expand the functionality. (From OE-Core rev: 794eb617bfd1997e7a3498812c63a20c58a10554) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/machine: move tune files to architecture directoriesJon Mason2021-08-1831-0/+671
| | | | | | | | | | | | | | | Move all of the tune files found in conf/machine/include into their respective architecture directories in that same location. All references to these will need to be updated. So, change the relevant ones for this tree in this commit as well. For the ARM tunes, nest them one further into armv8a, armv8m, etc. and rename some to make them uniform with the rest of the tunes. (From OE-Core rev: b6f15209bcfff953cce69da97a93f9ddff141ced) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8m-main: missing spaceJon Mason2021-08-171-1/+1
| | | | | | | | | Correct an issue with 2 AVAILTUNES not being separated by a space. (From OE-Core rev: 72a9ddf85876909d6f22582561a6e1c3a2ccf2fa) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexm*: add support for all Arm Cortex-M processorsJon Mason2021-08-139-0/+167
| | | | | | | | | | | | | | 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>
* Convert to new override syntaxRichard Purdie2021-08-0227-523/+523
| | | | | | | | | | | | This is the result of automated script conversion: scripts/contrib/convert-overrides.py <oe-core directory> converting the metadata to use ":" as the override character instead of "_". (From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv4: Allow -march=armv4Khem Raj2021-06-111-1/+1
| | | | | | | | | | | | | | | | | Even though it is deprecated in GCC 6 [1] it has not yet been removed from gcc upstream. We do have active machines in OE ecosystem which use armv4 ( SA11xx ) e.g. collie in meta-handheld so until upstream gcc takes next step to remove them lets support armv4 again, we are still carrying the relevant gcc patch to support v4 BX fix. [1] https://gcc.gnu.org/gcc-6/changes.html#arm (From OE-Core rev: dea9b6c3fd62ec5ea8f12fcb9bf44870379c6f4b) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Andrea Adami <andrea.adami@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv6m.inc: fix access rightsUlrich Ölmann2021-04-181-0/+0
| | | | | | | (From OE-Core rev: 2f7ebe444c2a78ef149b8c5f0f005ab23f24a176) Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-octeontx2.inc: Add tune for Marvell OCTEON TX2 coreKevin Hao2020-12-091-0/+13
| | | | | | | | | | The OCTEON TX2 core is custom designed by Marvell and is compliant with Arm V8.2 architecture. (From OE-Core rev: ad4f82742c6f32b35e2b965a32cccc96aad02d19) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-arm64.inc: don't append _be to ARMPKGARCH for tune-aarch64_beMartin Jansa2020-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * the _be suffix is already included in ARMPKGARCH with: ARMPKGARCH_tune-aarch64 ?= "aarch64" ARMPKGARCH_tune-aarch64_be ?= "aarch64_be" and then it was appended again through ARMPKGSFX_ENDIAN_64 TUNE_PKGARCH_64 = "${ARMPKGARCH}${ARMPKGSFX_ENDIAN_64}" * broken since: commit 08433cc58abf0cf3e42b22d20870a50287cfb8bc Author: Khem Raj <raj.khem@gmail.com> Date: Tue May 26 16:10:37 2020 -0700 armv8/tunes: Set TUNE_PKGARCH_64 based on ARMPKGARCH * fixes: scripts/tune/log.fake-cortexa32.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa32) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa34.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa34) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa35.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa35) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa53.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa53) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa55.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa55) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa57.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa57) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa57-cortexa53.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa57_cortexa53) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa65.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa65) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa65ae.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa65ae) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa72.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa72) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa72-cortexa53.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa72_cortexa53) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa73.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa73) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa73-cortexa35.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa73_cortexa35) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa73-cortexa53.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa73_cortexa53) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa75.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa75) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa75-cortexa55.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa75_cortexa55) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa76.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa76) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa76ae.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa76ae) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa76-cortexa55.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa76_cortexa55) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-cortexa77.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_cortexa77) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-neoversee1.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_neoversee1) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-neoversen1.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_neoversen1) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-thunderx.aarch64_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be fake_thunderx) for DEFAULTTUNE (aarch64_be) does not contain TUNE_PKGARCH (aarch64_be_be). scripts/tune/log.fake-thunderx.thunderx_be: Error, the PACKAGE_ARCHS variable (all any noarch aarch64_be thunderx_be fake_thunderx) for DEFAULTTUNE (thunderx_be) does not contain TUNE_PKGARCH (thunderx_be_be). (From OE-Core rev: e218c2d8973ed9978eed279dd167779e459f1eb0) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv7a.inc: fix typoMartin Jansa2020-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * broken since: commit 594f8584268d5179c18512beada2bae4a21325de Author: Phil Edworthy <phil.edworthy@renesas.com> Date: Wed Nov 28 10:09:57 2018 +0000 arch-armv7*.inc: Add Cortex vfpv4-d16 support Some ARM Cortex devices have the VFPv4-D16, but no NEON. * fixes: scripts/tune/log.fake-cortexa15.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa15) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa17.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa17) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa32.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa32) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa34.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa34) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa35.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa35) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa53.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa53) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa55.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa55) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa57.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa57) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa57-cortexa53.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa57_cortexa53) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa5.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa5) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa65ae.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa65ae) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa65.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa65) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa72.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa72) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa72-cortexa53.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa72_cortexa53) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa73.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa73) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa73-cortexa35.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa73_cortexa35) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa73-cortexa53.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa73_cortexa53) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa75.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa75) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa75-cortexa55.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa75_cortexa55) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa76ae.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa76ae) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa76.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa76) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa76-cortexa55.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa76_cortexa55) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa77.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa77) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa7.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa7) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa8.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa8) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-cortexa9.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_cortexa9) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-neoversee1.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_neoversee1) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-neoversen1.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_neoversen1) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). scripts/tune/log.fake-thunderx.armv7atb-vfpv4d16: Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16} fake_thunderx) for DEFAULTTUNE (armv7atb-vfpv4d16) does not contain TUNE_PKGARCH (armv7at2b-vfpv4d16). (From OE-Core rev: 1c01e2b1c68bad89c5c9bba5b731fd5da4435e5b) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa76ae.inc: Correct TUNE_FEATURESMartin Jansa2020-10-171-1/+1
| | | | | | | | | | | * as shown by sanity checker: Toolchain tunings invalid: Tuning 'cortexa76ae' has no defined features, and cannot be used. (From OE-Core rev: 5092e64c71930b9ff82cbba6ef6517ae4fed3475) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa65.inc: Correct TUNE_FEATURES_tune-cortexa65Peter Kjellerstedt2020-10-131-1/+1
| | | | | | | | | It incorrectly specified "cortexa55" instead of "cortexa65". (From OE-Core rev: 25317c51d4d0ac922f4bd555aae9fbfe48a1aa40) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv8/tunes: Add tunes for supported ARMv8.2a coresJon Mason2020-10-0910-0/+169
| | | | | | | | | | | | Add tunes for all the ARMv8.2a cores currently supported in GCC. This is: Cortex-A65, Cortex-A65AE, Cortex-A75, Cortex-A76, Cortex-A76AE, Cortex-A77, Neoverse-E1, Neoverse-N1, Cortex-A75-Cortex-A55, and Cortex-A76-Cortex-A55. (From OE-Core rev: f15e83df1d4ed4172b43d5b353cf42640862a28e) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv8/tunes: Add tunes for supported ARMv8a coresJon Mason2020-10-093-0/+57
| | | | | | | | | | Add tunes for all the ARMv8a cores currently supported in GCC. This is: Cortex-A34, Cortex-A73, and Cortex-A73-Cortex-A35. (From OE-Core rev: fdf6921f145658b1f1c2e7413a2cde6857ddb768) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv8/tunes: Move TUNECONFLICTSJon Mason2020-10-091-0/+1
| | | | | | | | | | Move TUNECONFLICTS to the generic arm64 inc file, so that it can provide coverage for more than just the big.LITTLE tunes. (From OE-Core rev: 8022543d79b62b0daa4c988e17cd3e2c364d3cf1) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Space-comma CleanupsJon Mason2020-09-309-13/+13
| | | | | | | | | | | | | Multiple files have " ," instead of ", " in expressions. This changes them to conform to the way the rest of them are done. Found and corrected via: git ls-files | xargs sed --follow-symlinks -i 's/ ,d/, d/g' (From OE-Core rev: 36c3afd2dd8bded02ea8f255e89a09ebd75c795b) Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cortex-m0plus.inc: Add tuning for cortex M0 plusJonathan Richardson2020-08-201-0/+19
| | | | | | | | | | 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>
* arch-armv8-2a.inc: add tune include for armv8.2aDmitry Baryshkov2020-07-271-0/+19
| | | | | | | | | | | | Add tune include for armv8.2a. This adds support only for bare armv8.2a (and for crypto extension). There is no support for additional instructions added by architecture extensions (except the main crypto extension support). (From OE-Core rev: 88c79a56b4ddab61c16cd4cb7b887e7d7223d845) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* armv8/tunes: Set TUNE_PKGARCH_64 based on ARMPKGARCHKhem Raj2020-06-041-1/+3
| | | | | | | | | | | | | | | | | The setting is to modify TUNE_PKGARCH which is filled with TUNE_PKGARCH_64 or TUNE_PKGARCH_32 in arm-arch64.inc This lets higher up tune files for arm64 SOCs override them if needed, this can help building multiple armv8 machines with different tunes in same workspace. No need to set TUNE_PKGARCH in tune files as it is synthesized from ARMPKGARCH Add ARMPKGARCH for aarch64 tunes (From OE-Core rev: 08433cc58abf0cf3e42b22d20870a50287cfb8bc) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* feature-arm-thumb.inc: fix ARM_THUMB_SUFFIXAndre McCurdy2019-09-071-2/+5
| | | | | | | | | | | Since TUNE_FEATURES now either contains a CPU or an architecture (but not both) we can't rely on finding the architecture in TUNE_FEATURES. Use architecture specific over-rides instead. (From OE-Core rev: 805dd4807d322dc70cef97edd68fdb3142b60fb1) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-arm64.inc: Lower the priority of aarch64 in MACHINEOVERRIDESPeter Kjellerstedt2019-04-031-1/+1
| | | | | | | | | | This makes sure, e.g., ${SOC_FAMILY} and ${MACHINE} have higher priorities than aarch64. (From OE-Core rev: 4d1339af88543d85930139dbcb87a669f285ea66) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8a.inc: Correct PACKAGE_EXTRA_ARCHS_tune-armv8a-*Peter Kjellerstedt2019-04-031-3/+3
| | | | | | | | | | | The armv8a tune specific PACKAGE_EXTRA_ARCHS contained tune feature names like "crc" and "crypto" rather than package architecture names like "armv8a-crc" and "armv8a-crypto". (From OE-Core rev: 1756f2354745ee709886683422887efed4e10dba) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Remove the simd tune for armv8aAdrian Bunk2019-03-191-4/+2
| | | | | | | | | | | SIMD instructions are a mandatory part of armv8a (they were optional in armv7a), and the gcc docs also say that they are always enabled. (From OE-Core rev: 02288c94e99e9dd444d8c1af186b6d89085b7b8b) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv5-dsp.inc: Check for dsp only to enable 'e' in package archesKhem Raj2019-03-181-1/+1
| | | | | | | | | | | armv5 is not a specific tune feature anymore, there is no need to check it, since having dsp will define if 'e' should be added or not (From OE-Core rev: 1d6d5bb30a83f9136b7c33e297d48564ae61b50e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv8a.inc: Add missing BASE_LIB tune overridesMike Crowe2019-02-261-0/+4
| | | | | | | | | | For multilib to work correctly, BASE_LIB overrides must be provided for each new tune added in this file. (From OE-Core rev: e39c5ec90ebbc37064c9cd59eba12603317740cd) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv7*.inc: Add Cortex vfpv4-d16 supportPhil Edworthy2019-02-084-9/+61
| | | | | | | | | Some ARM Cortex devices have the VFPv4-D16, but no NEON. (From OE-Core rev: 594f8584268d5179c18512beada2bae4a21325de) Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>