summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/tune-cortexa8.inc
AgeCommit message (Collapse)Author
2021-08-18conf/machine: move tune files to architecture directoriesJon Mason
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-02Convert to new override syntaxRichard Purdie
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>
2020-09-30Space-comma CleanupsJon Mason
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>
2019-01-28arm-tunes: Remove -march option if mcpu is already addedKhem Raj
tune files which inherit the arch definitions already define appropriate -mcpu option, which is equivalent of right -march and -mtune combination and is preferred since gcc is getting stricter and stricter with option check semantics and can now find incompatible -march and -mcpu options better with every release. It does internal feature consistency check and if it finds out discrepency between what -mcpu would expand to as compared to -march it will flag the options to be incompatible, for naked eye it sounds wrong but gcc would translate -mcpu to a given -march internally and it might not match to what we set in these arch files. The effects are quite subtle, where this can result in configure test failing to compile due to these incompatible options and a feature option getting disabled for a recipe for no reason. e.g. with gcc9 which can now detect that -mcpu=cortex-a5 and -march=armv7-a are incompatible, many features in libstdc++ ends up disabled due to configure check failures e.g. size_t size, ptrdiff_t sizes, which inturn results in compiling libstdc++ with unwanted disabled features. (From OE-Core rev: ac83d22eb5031f7fdd09d34a1a46d92fd3e39a3c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-10conf/machine/include: enable hardfloat by default for ARMv6 and aboveAndre McCurdy
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>
2016-12-07tune-cortexa*.inc: squash whitespace within TUNE_FEATURES stringsAndre McCurdy
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. (From OE-Core rev: 5610c6397ee098dd998b7417b343494de77179f9) 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>
2016-01-07tune-*: use mcpu instead of mtune for ARM tunesMartin Jansa
* since: commit cffda9a821a3b83a8529d643c567859e091c6846 Author: Martin Jansa <Martin.Jansa@gmail.com> Date: Tue Sep 11 17:05:45 2012 +0000 arch-arm: define different ARMPKGARCH when different CCARGS are used we don't need to worry about e.g. cortexa7 device upgrading binary package from armv7a feed which would be built with -mcpu=cortexa15, so we can use -mcpu instead of -mtune, because we won't share the binary feed with MACHINEs built with different tune. (From OE-Core rev: f7bb2d4cf18ca8d2a90b4b3b5c6c48dad106ca28) 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-07feature-arm-{neon,vfp}.inc: refactor and fix issuesMartin Jansa
* 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-07arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, ↵Martin Jansa
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-07arch-armv7a, tune-cortexa*: improve indentationMartin Jansa
* indent the assignments, so that it's easier to see the algoritm how these values are modified and do less errors, see fixes in next commit (From OE-Core rev: f774b44fa007a2a756ada892ede832b1251d940c) 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-07arch-armv7a, tune-cortexa*: improve comment VFP -> HFMartin Jansa
* the section bellow the comment adds only HF variants, VFP is already mixed in the softfp sections above (unlike armv5, armv6 tune files where it really was above VFP/DSP section) (From OE-Core rev: 0c60d744f6ec3b77f044ac7d66e30c00d00fea81) 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>
2015-12-01meta/conf/machine: use ' inside quoted valuesMartin Jansa
(From OE-Core rev: 924ccf202a6d89de32fc34a140bf9e35e8e43b4e) 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>
2013-06-12tune-cortexa*.inc: fix tunings for cortex a5, a7, a8, a9, a15 machines.Andy Voltz
Using CORTEX_ID variable reference in the tuning overrides did not work. This reverts those changes, and adds a tuning file for the cortex-a5. Revert "tune-cortexa5.inc: Add tune file for cortex-a5" Revert "tune-cortexa.inc: create a common include for cortex-a armv7a tuning" (From OE-Core rev: 74158c2e99c6d8631800ae80025d1cc9f19336d2) Signed-off-by: Andy Voltz <andy.voltz@timesys.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-07tune-cortexa.inc: create a common include for cortex-a armv7a tuningAndy Voltz
The tuning files for the cortex-a* processors are mostly identical for the A7,A8,A9,A15 processors. Rework these files to use a CORTEX_ID variable to setup the tuning for each specific processor. (From OE-Core rev: 3e4f4a1cf07ff7cf4c71566492385f8fbf581789) Signed-off-by: Andy Voltz <andy.voltz@timesys.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-29conf/machine: use .= instead of += in TUNE_CCARGSMartin Jansa
* number of TUNE_CCARGS conditionals is important if we add extra space with each one in "else" branch I'm building for 2 MACHINEs one is cortexa9, second is cortexa8 few months ago we added TUNE_CCARGS[vardepvalue] in bitbake.conf http://git.openembedded.org/openembedded-core/commit/?id=03f1e34ea3ce80931e9c3cd2ab22824f28a7233b which fixed some cases (like mentioned tune-xscale and tune-arm926ejs) where both had unused TUNE_CCARGS when common DEFAULTTUNE was used. with cortexa[89] it's different, because cortexa9 has one extra TUNE_CCARGS TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}" which adds extra *space* even when not used because of '+=' and as result: $ bitbake-diffsigs tmp-eglibc/sstate-diff/1366797730/*/armv7*/adapterbase/*do_configure* basehash changed from f986789fb8fb3579ed6a3492cc8a8d10 to c851b5f838d945ee13072e9ad6725dca Variable TUNE_CCARGS value changed from ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' to ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' Hash for dependent task gcc-runtime_4.7.bb.do_populate_sysroot changed from bdeabf7a86958b9110b566344b7916de to 2be5618e6bc8c57ec9db5659bf217915 Hash for dependent task eglibc_2.17.bb.do_populate_sysroot changed from b4f40fc62dde684acd0a574532a55360 to 97fcb426603d4a1c1099c0504d2ebf7d Hash for dependent task glib-2.0_2.34.3.bb.do_populate_sysroot changed from fd2f90b83098c34e88d649d70f6ea4f5 to ebd740bb94ea3eb0a914efda6fc82c4a (From OE-Core rev: b7430ff83760ac29079d20dc7c62f498a0a9d55d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-10tune-cortexa*: Fix TUNE_FEATURES and PACKAGE_EXTRA_ARCHS for thf-neonMartin Jansa
* all cortexa*thf-neon except cortexa8 were missing thumb feature from TUNE_FEATURES_tune-armv7athf-neon * all cortexa*thf-neon except cortexa8 included cortexa9t2-vfp instead of cortexa9t2hf-vfp * PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon was including from armv7a -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon +PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon * please do more testing for this, I'm sending this commit mostly because I've noticed that new a7 and a15 differ from a8 more then I've expected and I don't have any a7/a15 MACHINEs, feel free to extend http://git.openembedded.org/openembedded-core-contrib/log/?h=jansa/tune2-test to add and test fake a7/a15 configs (From OE-Core rev: a207ce735b602b751467eb43e09b958e664a8e81) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03tune-cortexa*: add another TUNE which allows to enable cortexa* together ↵Martin Jansa
with thumb and neon * like we have with tune-armv7at-neon (From OE-Core rev: 3337b695ca3af5b894d9c61436c61a1d1750f089) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03tune-*: add PACKAGE_EXTRA_ARCHS entries starting with specific ARMPKGARCHMartin Jansa
* e.g. arm926ejs DEFAULT tune is compatible with all PACKAGE_EXTRA_ARCHS_tune-armv5te, but needs to list arm926ejs with all possible suffixes too (From OE-Core rev: ee3e85e3bdd382aca4ad8e2eece44064ee89dcff) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03tune-cortexa*, tune-xscale: fix ARMPKGARCHMartin Jansa
* hf/t/neon/b suffix is added by other ARMPKGSFX* variables, should not be part of ARMPKGARCH, otherwise resulting TUNE_PKGARCH have that suffix twice, e.g. cortexa8hf-neonhf-neon (From OE-Core rev: 007a0dec82a33b01541c7f6fcad5d28c47a318ba) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26tune-*: define more generic DEFAULTTUNE to share feed between machinesMartin Jansa
* this is mostly for backwards compatibility and to share binary feed like it was before, but now without missing different -mtune in it * if you want to build some package with -mtune add something like this to your distro config DEFAULTTUNE_qemuarm_pn-openssl = "arm926ejs" DEFAULTTUNE_qemuarmx_pn-openssl = "xscale" be aware that if you do this you should do it also for all packages which depends on openssl because if you dont and you build e.g. dhcp, then dhcp build for arm926ejs (even with DEFAULTTUNE armv5te) will depend on openssl with arm926ejs, so dhcp in armv5te feed will be rebuild after each MACHINE switch. * cortexm3, cortexr4, iwmmx and ep9312 are using own DEFAULTTUNE because they define also different -march * shared feeds are armv4t: arm920t, arm9tdmi armv5te: arm926ejs, xscale armv7a-neon: cortexa8, cortexa9 (From OE-Core rev: a11bdc36a1be18cc5aa14682b2a2c9ee83141f51) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26arch-arm: define different ARMPKGARCH when different CCARGS are usedMartin Jansa
* without this tune-xscale and tune-arm926ejs were both creating packages in armv5te feed, but each with different -mtune, with OEBasicHash enabled it was causing each package to rebuild with new -mtune after MACHINE switch, but that doesn't make sense with output stored in the same armv5te feed * this makes different feed for each -mtune, but more generic one to be selected with DEFAULTTUNE * tune-iwmmxt and tune-ep9312 were already using this, just move it bellow AVAILTUNES and use ARMPKGARCH_tune-foo syntax * tune-cortexr4 and tune-cortexm3 are using armv7r/armv7m as ARMPKGARCH because there isn't another tune to use the same -march (From OE-Core rev: cffda9a821a3b83a8529d643c567859e091c6846) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-31tune-cortexa8/9: fix PACKAGE tunes being all armv7at even for non-Thumb onesDenys Dmytriyenko
All PACKAGE_EXTRA_ARCHS for cortexa8, cortexa8t and cortexa8-neon have typo in referencing tune-armv7at even for non-Thumb modes. Probably a copy/paste error. That's not the case for recently-added hard-fp tunes. Same for cortexa9. (From OE-Core rev: 4e91c00bb3a171bebdb716451b901f5f099a04bc) Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23tune: Add hard floating point variants of cortexa8 tunesDarren Hart
Enable machines or distros to select the hard floating point abi for cortexa8 machines. I left out the arm7a thumb+neon combinations as they were not present in the original non-hf set. (From OE-Core rev: c70ebd6f8ff34071febeb132c8bc4df220e328da) Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Jason Kridner <jkridner@beagleboard.org> CC: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27Add ARM tune file overhaul based largely on work from Mark HatleRichard Purdie
(From OE-Core rev: 789dcb8e68a2ab9784ac10ab36815010c61af2fc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-25conf/machine/include: Start to fill out architecture specific tune include ↵Richard Purdie
files and tune features These changes revolve around the idea of tune features. These are represented by 'flag' strings that are included in the TUNE_FEATURES variable. Any string included in TUNE_FEATURES should also add a TUNEVALID[<name>] entry so we can know which flags are available in TUNE_FEATURES and have documentation about what the flags do. We will add sanity code to error if flags are listed in TUNE_FEATURES but are not documented in TUNEVALID. A given tune configuration will want to define one or more predetermined sets of _FEATURE flag lists. These are defined in the form TUNE_FEATURES_tune-<name>. For defined tune configuation, <name> should be added to the AVAILTUNE list so that we can determine what tune configurations are available. Flags cannot be used in this case as with TUNEVALID since its useful to be able to build up tune lists from other TUNE_FEATURES_tune-yyy options. A given tune configuration may also define PACKAGE_EXTRA_ARCHS_tune-<name> and BASE_LIB_tune-<name> to control the multilib location. All options can be overridden by the distro or local user configuration. (From OE-Core rev: 5f9d56bd64997b93ed7e46c117851002a0556654) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-25conf/machine/include: Set TUNE_CCARGS instead of TARGET_CC_ARCHRichard Purdie
Since we're updating the tune file format, it makes sense to abstract the compiler tune arguments at this point too. This means that should these need to be overridden at any point, the original values can still be obtained in a similar manner to the other TUNE* variables. Whilst this isn't strictly necessary for any current need, its likely good practise to standardise this behaviour. (From OE-Core rev: 3a3c69a1bc3cf0b6f6a3b13d86c12ed21798d48e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-25conf/machine/tune: Overhaul tune include file variablesRichard Purdie
There is currently consideradble confusion over how the tune files operate and how these interact with the rest of the build system. This update/overhaul changes things so the tune files are primarily resonsible for setting: TUNE_ARCH - What was formerly set as TARGET_ARCH and is the value that represents the architecture we're targetting. TUNE_PKGARCH - The value that represents the tune confuration that this set of tune parameters results in. This allows the significant improvement that the core can now always determine the target architecture value, even when TARGET_ARCH needs to be reset to something different and likewise, there is one package architecture variable the core can reference allowing simplification of the BASE_PACKAGE_ARCH, PACKAGE_ARCH and FEED_ARCH variables. (From OE-Core rev: a10de4cf8b424ee95c8e283e75d486be5b3b8eac) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-23bitbake.conf/tune files: Adjust PACKAGE_EXTEA_ARCHSRichard Purdie
There is a problem with the current PACKAGE_EXTRA_ARCHS implementation since its impossible to control which extra architectures sort higher than TARGET_ARCH and which sort lower. In the x86 case for example, TARGET_ARCH might be "i586", i486 should be lower than this and i686 should be higher. There are also complications where its easy to inject duplicate entries into the variable. I tried various versions of this patch and concluded that it was simplest just to force the tune files to include TARGET_ARCH in the list in the right place if they're planning to customise it themselves. Other approaches with appends and prepends just complicated the code for no good reason. The TARGET_ARCH definitions should also move to the tune files but I'll leave this for a separate patch. (From OE-Core rev: d492ebf8b1801da99c679f465be98ce54fd3061a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-10machines: move PACKAGE_EXTRA_ARCHS to tune filesKoen Kooi
This gets us closer to making including tune-<arch>.inc "just work". Moving the TARGET_ARCH definitions is something for a follup patch. Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2009-08-26tune-cortexa8.inc: don't auto-vectorize, remove package overrides, some cleanupMike Turquette
Signed-off-by: Mike Turquette <mturquette@ti.com>
2008-07-18tune-cortexa1.inc: Rationalise options, at least until gcc support for the ↵Richard Purdie
others improves git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4880 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-07-18tune-cortexa8.inc: Remove tree vectorization option for now, it causes too ↵Richard Purdie
many problems git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4867 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-07-17bitbake.conf/tune.conf: Set BASE_PACKAGE_ARCH and build PACKAGE_ARCH from thisRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4857 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-06-10tune-cortexa8.inc: Disable -ftree-vectorize option for libxcursor for nowRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4617 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-06-10conf/machine/include: Add tuning .inc files from OE.devRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4615 311d38ba-8fff-0310-9ca6-ca027cbcb966