Commit Graph

100 Commits

Author SHA1 Message Date
Jon Mason
a4b23e131e tune-*: Use more specific DEFAULTTUNE
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>
2021-09-01 14:06:17 +01:00
Jon Mason
da768360dd arch-arm*: Fix bugs with dsp and simd feature include files
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>
2021-08-22 22:21:47 +01:00
Jon Mason
8d77024c71 tune-cortexr*: add support for all Arm Cortex-R processors
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>
2021-08-20 08:53:03 +01:00
Jon Mason
ff0ea5633a arch-arm*: add better support for gcc march extensions
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>
2021-08-20 08:53:03 +01:00
Jon Mason
1d381f21f5 conf/machine: move tune files to architecture directories
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>
2021-08-18 17:01:06 +01:00
Jon Mason
12e1f9815d arch-armv8m-main: missing space
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>
2021-08-17 09:53:04 +01:00
Jon Mason
dac9318c5a 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>
2021-08-13 14:44:06 +01:00
Richard Purdie
bb6ddc3691 Convert to new override syntax
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>
2021-08-02 15:44:10 +01:00
Khem Raj
6b47aefa31 arch-armv4: Allow -march=armv4
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>
2021-06-11 23:50:58 +01:00
Ulrich Ölmann
91aa850998 arch-armv6m.inc: fix access rights
(From OE-Core rev: 2f7ebe444c2a78ef149b8c5f0f005ab23f24a176)

Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-18 11:37:25 +01:00
Kevin Hao
df70a725d8 tune-octeontx2.inc: Add tune for Marvell OCTEON TX2 core
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>
2020-12-09 12:20:33 +00:00
Martin Jansa
2b5c0c68a3 arch-arm64.inc: don't append _be to ARMPKGARCH for tune-aarch64_be
* 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>
2020-10-17 23:22:19 +01:00
Martin Jansa
39e8e54b93 arch-armv7a.inc: fix typo
* 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>
2020-10-17 23:22:19 +01:00
Martin Jansa
2afdfbb70d tune-cortexa76ae.inc: Correct TUNE_FEATURES
* 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>
2020-10-17 12:34:30 +01:00
Peter Kjellerstedt
500fa84551 tune-cortexa65.inc: Correct TUNE_FEATURES_tune-cortexa65
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>
2020-10-13 09:42:08 +01:00
Jon Mason
16bbaba389 armv8/tunes: Add tunes for supported ARMv8.2a cores
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>
2020-10-09 12:01:24 +01:00
Jon Mason
92b96222b9 armv8/tunes: Add tunes for supported ARMv8a cores
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>
2020-10-09 12:01:24 +01:00
Jon Mason
18c510e05c armv8/tunes: Move TUNECONFLICTS
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>
2020-10-09 12:01:23 +01:00
Jon Mason
ceefa75ac0 Space-comma Cleanups
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>
2020-09-30 15:01:51 +01:00
Jonathan Richardson
5731777f62 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>
2020-08-20 15:30:07 +01:00
Dmitry Baryshkov
61a7d0711f arch-armv8-2a.inc: add tune include for armv8.2a
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>
2020-07-27 10:37:58 +01:00
Khem Raj
2b9e3c2111 armv8/tunes: Set TUNE_PKGARCH_64 based on ARMPKGARCH
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>
2020-06-04 13:27:29 +01:00
Andre McCurdy
71fbb20771 feature-arm-thumb.inc: fix ARM_THUMB_SUFFIX
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>
2019-09-07 07:47:24 +01:00
Peter Kjellerstedt
29edc44efa arch-arm64.inc: Lower the priority of aarch64 in MACHINEOVERRIDES
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>
2019-04-03 14:50:13 +01:00
Peter Kjellerstedt
42ea15a21b arch-armv8a.inc: Correct PACKAGE_EXTRA_ARCHS_tune-armv8a-*
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>
2019-04-03 14:50:13 +01:00
Adrian Bunk
800c32096c Remove the simd tune for armv8a
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>
2019-03-19 23:50:41 +00:00
Khem Raj
c0bbbc5419 arch-armv5-dsp.inc: Check for dsp only to enable 'e' in package arches
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>
2019-03-18 23:47:43 +00:00
Mike Crowe
10a97f71af arch-armv8a.inc: Add missing BASE_LIB tune overrides
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>
2019-02-26 23:04:31 +00:00
Phil Edworthy
c4f1276721 arch-armv7*.inc: Add Cortex vfpv4-d16 support
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>
2019-02-08 23:15:32 +00:00
ayaka
867032eba7 arch-armv8a.inc: add tune include for armv8
There are some addtional instructions apart from bare armv8,
also there is armv8.1, armv8.2.

Most the processor would support crc, except X-gene 1.

(From OE-Core rev: d1db78b0e284e1a1f370e71183ded0cbdc1475db)

Signed-off-by: Randy Li <ayaka@soulik.info>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-06 08:29:06 +00:00
Khem Raj
fb2e4b1913 arch-armv4.inc, arch-armv5.inc: Do not tie generating thumb ISA to -march
-march=armv5't'e means that CPU can execute thumb ISA, we do not need to
tie this to exclusively generating thumb ISA, this change means that
when we have thumb in tune features then it can use 't' in -march
options irrespective of ISA being thumb or arm.

This fixes derivative of armv5 tunes and paves way for gcc9 where e.g.
armv5e is dropped and minimum arch supported is armv5te

(From OE-Core rev: 49bc3eab2897307a92b538a045e3d4dce245b0e0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-07 10:54:13 +00:00
Andre McCurdy
3e7d26e31a arch-armv7a.inc: default to Thumb2 instruction set for armv7a and above
Although there may still be specific cases which can benefit from the
ARM instruction set, the Thumb2 instruction set is generally a better
default for armv7a class CPUs. Distros such as Debian and Fedora have
been targeting Thumb2 by default for some time.

Note that setting ARM_INSTRUCTION_SET has no effect unless
TUNE_FEATURES contains "thumb" (which is controlled by the "t" suffix
in DEFAULTTUNE, e.g. armv7vehf-neon -vs- armv7vethf-neon, etc) so out
of tree machine configs may need to update their DEFAULTTUNE to take
advantage of this change.

(From OE-Core rev: c88304a78e528596ca481cabe273749c286c352a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-28 09:22:35 +01:00
Andre McCurdy
7179878b28 feature-arm-vfp.inc: drop unnecessary extra space from TUNE_CCARGS
The trailing space added to TUNE_CCARGS when appending -mfpu=XXX is
unnecessary and leads to a double space in the final value.

(From OE-Core rev: 4fde0110321b04d1f3418f05e61a2eb0b3ec8625)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-11-08 22:24:03 +00:00
Andre McCurdy
c13eb4ff7c feature-arm-thumb.inc: fix ARM_THUMB_SUFFIX for armv8
The current definition for ARM_THUMB_SUFFIX doesn't consider armv8
and will therefore cause TUNE_PKGARCH to be set incorrectly for
machines which inherit arch-armv8 and don't include aarch64 in
TUNE_FEATURES (ie when building for 32bit ARMv8).

Also fix typo in comments and improve TUNEVALID[thumb] wording.

(From OE-Core rev: 3691fd7dbe7f01ca29c14fc603c6946864af3b3c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22 11:35:19 +00:00
Andre McCurdy
5c850760bb conf/machine/include: enable hardfloat by default for ARMv6 and above
Defaulting to softfp probably isn't the best choice anymore,
especially as there are now ARM BSP layers which leave DEFAULTTUNE
entirely up to the distro:

  https://lists.yoctoproject.org/pipermail/yocto/2017-February/034637.html

Also add 't' to the ARMv7 default DEFAULTTUNEs, since there's no
clear reason to default to ignoring ARM_INSTRUCTION_SET for ARMv7.

(From OE-Core rev: 2b3ae58f5eaecc8474761c543ff5347aa0e3c4c8)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-10 14:50:10 +00:00
Andre McCurdy
9571347bcc arch-arm*.inc: squash whitespace within TUNE_FEATURES strings
TUNE_FEATURES is include in BUILDCFG_VARS, so any whitespace is
visible to the user during the build process. Remove the extra
whitespace added during the 2.1 development cycle:

  http://git.openembedded.org/openembedded-core/commit/?id=f774b44fa007a2a756ada892ede832b1251d940c

For consistency, squash whitespace within PACKAGE_EXTRA_ARCHS strings
too.

Whitespace within TUNE_FEATURES strings in the tune-cortexa*.inc
files has been fixed in a separate commit:

  http://git.openembedded.org/openembedded-core/commit/?id=5610c6397ee098dd998b7417b343494de77179f9

(From OE-Core rev: 3cd0c5ef748ad072f1bd9a8d42157e9643bf97eb)

(From OE-Core rev: 971e43270173afb08f21ffac16a4157f7e611b81)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-02-23 12:49:48 -08:00
Joshua Lock
c4e2c59088 meta: remove True option to getVar calls
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.

Search made with the following regex: getVar ?\(( ?[^,()]*), True\)

(From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16 10:23:23 +00:00
Khem Raj
7af36a74d7 arch-arm64.inc: Include arch-armv7ve.inc
All armv8 implementations from a53 - a73 supports
virtual extentions

(From OE-Core rev: f896375c60d8ce0f1293f5329163172e946f46df)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-30 15:48:06 +00:00
André Draszik
45dd3d28e4 feature-arm-vfp.inc: fix overzealous ARMPKGSFX_FPU modification
Since commit 972b4fc (feature-arm-neon.inc: restore vfpv3-d16 support)
we're replacing _all_ dashes (-) in ARMPKGSFX_FPU, which is causing
problems for all legitimate uses of the dash as TUNE_PKGARCH doesn't
have the right value anymore:

E.g. on raspberrypi2:

ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
    Following is the list of potential problems / advisories:

    Error, the PACKAGE_ARCHS variable (all any noarch armv5hf-vfp armv5thf-vfp
armv5ehf-vfp armv5tehf-vfp armv6hf-vfp armv6thf-vfp armv7ahf-vfp
armv7at2hf-vfp armv7vehf-vfp armv7vet2hf-vfp armv7vehf-neon armv7vet2hf-neon
armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4 cortexa7hf-vfp cortexa7hf-neon
cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon
cortexa7t2hf-neon-vfpv4 raspberrypi3) for DEFAULTTUNE (cortexa7thf-neon-vfpv4)
does not contain TUNE_PKGARCH (cortexa7hf-neonvfpv4).

Fix this by being more explicit about what we're modifying.

Reported-by: Khem Raj <raj.khem@gmail.com>
(From OE-Core rev: cf82db2ba732031f392760e4f363e8b608e6fae3)

Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-14 23:05:12 +01:00
André Draszik
c7bf1a871a feature-arm-neon.inc: restore vfpv3-d16 support
Commit 6661718 (feature-arm-{neon,vfp}.inc: refactor and fix issues)
effectively changed the gcc -mfpu= option from -mfpu=vfpv3-d16 to
-mfpu=vfpv3d16, which gcc doesn't understand.

Restore the original value.

After doing that, we also need to adjust ARMPKGSFX_FPU which should
contain the same value without dash '-' as it is used that way
throughout.

(From OE-Core rev: 972b4fc459258572eeaad8af91e48ee9f0acade7)

Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-11 10:33:42 +01:00
Denys Dmytriyenko
de7562620e arch-armv7ve: inherit armv7a tunes file
armv7a is a subset of armv7ve:
https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html

   -march=armv7ve is the armv7-a architecture with virtualization extensions.

By inheriting armv7a from armv7ve it's possible for e.g. Cortex-A15 machines
to include tune-cortexa15.inc and have a full range of optimizations, but
set DEFAULTTUNE as "armv7a" to produce binaries compatible with Cortex-A8
machines, etc.

(From OE-Core rev: 5bf5e68e540dc4e034288702094d306ebd19fef9)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-06 10:31:14 +01:00
Nathan Rossi
6518db4707 feature-arm-thumb.inc: Fix thumb tune override warning
Fix the quotes in the bb.utils.contains feature check so that the call
results in a boolean value instead of a string, which allows the warning
check to occur.

(From OE-Core rev: aac3919f538a5608ffcc3af5bd8f121e3c2c3469)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-07 00:11:38 +00:00
Martin Jansa
c6a19917ec arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
* be aware that this -march value is available only in gcc-4.9 and
  newer:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
* -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
  We either have to stop putting -march in default CCARGS or at
  least set it compatible one like this patch does.

(From OE-Core rev: 35392025f3236f5e5393f9cf0857732da9a2e503)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:19 +00:00
Martin Jansa
7f2cb68524 feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT
* add TUNE_CCARGS_MFLOAT variable which is used to set -mfloat-abi
  parameter as well as ARMPKGSFX_EABI suffix in TUNE_PKGARCH and
  TARGET_FPU
* TARGET_FPU was using ARMPKGSFX_FPU, but in most cases we use it
  only to distinguish between hard and soft abi, not various -mfpu
  variants which can appear in ARMPKGSFX_FPU

(From OE-Core rev: 10bece310ca6e0bbae28665f873f907d751d1057)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:19 +00:00
Martin Jansa
e9b2ffc0fe feature-arm-{neon,vfp}.inc: refactor and fix issues
* respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when
  setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't
  possible to use call-convention hard together with vfpv4
* move 'vfpv3d16', 'vfpv3', 'vfpv4' support from
  feature-arm-vfp.inc
  to
  feature-arm-neon.inc
  the main difference is that feature-arm-vfp.inc is included in
  arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so
  these options should be added to TUNEVALID also only for armv7*
  MACHINEs.
* support vfpv4 with or without neon
  when both vfpv4 and neon are in TUNE_FEATURES we want to set only one
  -mfpu parameter and to neon-vfpv4
* prevent multiple appends to ARMPKGSFX_FPU, we don't want to include
  e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in
  TUNE_FEATURES
* add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we
  were only adding -vfp to ARMPKGSFX_FPU
* add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as
  well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are
  appended to it based on TUNE_FEATURES and then the last one is used
  in the actual param and suffix
* this prevents multiple -mfpu options in TUNE_CCARGS

* !!!
  This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for
  vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend
  multiple times. If you're using one of these new DEFAULTTUNES (which
  were at least partially broken anyway) and depend on working binary
  package feed upgrade-path, then don't forget to migrate PR service
  database to new TUNE_PKGARCH.

(From OE-Core rev: 6661718158f8fdcdf63b0d48e8fe72d3ac4778f2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:19 +00:00
Martin Jansa
45f726cc58 arch-armv7a.inc: add vfpv4 support also to softfp and big endiand tunes
(From OE-Core rev: b4e90a15e6b1e5639b2039adeae26f2c780a7864)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:19 +00:00
Martin Jansa
ebe83589ba arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3, tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4
(From OE-Core rev: 8c12a71e41fb53a014b8357ae9b30bfd422f86ec)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:18 +00:00
Martin Jansa
9280a8ea61 arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp
* both belong and already are in arch-armv5-dsp.inc

(From OE-Core rev: 791f52d3b58ce1fd4bfd159deb83a1917d6267f2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:18 +00:00
Martin Jansa
46d6b0ea46 arch-armv[456]*.inc: improve indentation like armv7a
(From OE-Core rev: 5e685647733294315e6c2ce76733c9b9a5ee554b)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:18 +00:00
Martin Jansa
860663a92f arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, powerpac/arch-powerpc64.inc: Use normal assignment
* some tunes were using weak assignment for TUNE_FEATURES, unify
  all tunes to use normal assignment so it behaves consistently

(From OE-Core rev: 0a52bd3ed23e66200401d0836aad783095e7c7a0)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-07 13:40:18 +00:00