summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/mips/arch-mips.inc
AgeCommit message (Collapse)Author
2023-08-15arch-mips: Ensure TUNE_LDARGS is set correctlyRichard Purdie
Similarly to x86, ensure we have the flags to the linker operating correctly (it defaults to 32 bit). Normally it is driven by gcc so this hasn't shown up but it does lead to hundreds of binutils test failures. (From OE-Core rev: 2cf9013fd8df2bb67f93ffd44ccc23453cedf42a) 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-10-17arch-mips.inc: remove duplicated mips64el-o32 from ↵Martin Jansa
PACKAGE_EXTRA_ARCHS_tune-mips64el-o32 * broken since: commit ae5073c4abd8935c01d14d3e6395124f815bd10b Author: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Date: Fri Sep 23 15:28:08 2016 +0100 arch-mips: Add mips64-o32 tunes * fixes: scripts/tune/log.fake-mips-24k.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32r2.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips32r6.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64r2.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips64r6.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-mips-74k.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 scripts/tune/log.fake-octeon.mips64el-o32: Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: mips64el-o32 (From OE-Core rev: f8f07d1249a9a86307c1121edd4df3b64162c61b) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 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>
2017-03-01recipes: Make use of the new bb.utils.filter() functionPeter Kjellerstedt
(From OE-Core rev: 0a1427bf9aeeda6bee2cc0af8da4ea5fd90aef6f) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-07arch-mips: sort new MACHINEOVERRIDES by priorityAndré Draszik
While I couldn't find explicit documentation, it appears that the list of MACHINEOVERRIDES should be sorted from less specific to more specific left to right, so that more specific overrides take precedence. (From OE-Core rev: 59c724db5628775e77fa090183897c6ae0fdf9a8) Signed-off-by: André Draszik <adraszik@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-15arch-mips: Add MACHINEOVERRIDES variables to reduce duplicationZubair Lutfullah Kakakhel
In some cases, each MIPS variant in a recipe requires a duplicate line. Even if the passed flag is the same. Add global MACHINEOVERRIDES variables for the following * mipsarch : All MIPS * mipsarch{eb,el} : All MIPS Big/Little Endian * mipsarchr6 : All MIPS R6 * mipsarcho32 : All MIPS o32 Endian Independent * mipsarchn32 : All MIPS n32 Endian Independent * mipsarchn64 : All MIPS n64 Endian Independent * mipsarcho32{eb,el} : All MIPS o32 Big/Little Endian * mipsarchn32{eb,el} : All MIPS n32 Big/Little Endian * mipsarchn64{eb,el} : All MIPS n64 Big/Little Endian This is intended to reduce duplications in recipes [YOCTO #10404] (From OE-Core rev: 0d2205f26e5ece089630f72af2bd5f0931e851c3) Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15arch-mips.inc: remove duplicates from PACKAGE_ARCHSRobert Yang
Fixed: MACHINE = "qemumips64" DEFAULTTUNE = "mips64-o32" $ bitbake linux-yocto 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 contains duplicates. The following archs are listed more than once: mips64-o32 (From OE-Core rev: e57d70e6803c63823ae3a7c7971fc06db3748b68) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-07arch-mips: Add mipsisa{32, 64}r6{el, } tunesZubair Lutfullah Kakakhel
Add support for MIPS Release 6 ISA and the various tune configurations. This patch adds the tunes for 32r6 and 64r6 n64 and not the n32 variants at the moment. Release 6 onwards, the tuples are now - mipsisa32r6-linux-gnu - mipsisa32r6el-linux-gnu - mipsisa64r6-linux-gnuabi64 - mipsisa64r6el-linux-gnuabi64 - mipsisa64r6-linux-gnuabin32 - mipsisa64r6el-linux-gnuabin32 For more details, check https://wiki.debian.org/Multiarch/Tuples (From OE-Core rev: 6b2e0c60c3222a13b33284f258d5c340222d759f) Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-24arch-mips: Add mips64-o32 tunesZubair Lutfullah Kakakhel
Add mips64 + o32 rootfs abi tune configurations (From OE-Core rev: ae5073c4abd8935c01d14d3e6395124f815bd10b) Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-03arch-mips.inc: Disable QEMU usermode usage when building with n32 ABIAlexander Kanavin
QEMU usermode doesn't support n32 binaries, erroring with "Invalid ELF image for this architecture". (From OE-Core rev: 66aa39a959bd41f7063fe64a9225eb9fd6c3293b) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.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>
2015-08-01arch-mips.inc: don't override TRANSLATED_TARGET_ARCHDmitry Eremin-Solenikov
Currently MIPS64 N32 is broken. There is internal disagreement between TARGET_ARCH (which doesn't contain ABIEXTENSION) and TRANSLATED_TARGET_ARCH (which contains ABIEXTENSION). ABI is already encoded into the TARGET_OS. ARM tunes in the same situation override neither the TARGET_ARCH nor the TRANSLATED_TARGET_ARCH. So let's drop this override. (From OE-Core rev: 3ee5c9ad302bc05c75badbe29dd983a043a114c2) Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-29arch-mips.inc: Change definition of TRANSLATED_TARGET_ARCHMark Hatle
[YOCTO #7230] In certain system configurations TRANSLATED_TARGET_ARCH will not expand in the right order for gcc-cross-candian-mips64n32 to be generated properly. This will cause SDKs to fail to generate properly. Changing the global definition of TRANSLATED_TARGET_ARCH always expands the ABIEXTENSION, which causes the OVERRIDES to pick it up as well. This effectively defines a new class of overrides for the 'n32'. The side effect is that we need to duplicate some mips64 overrides, and redefine others that were previously 'n32' or 'mips64' exclusive to have the correct semantics. (From OE-Core rev: 4b3a2b703b20583bd107f00a297d972e9bfb514a) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-21arch-mips.inc: Add the MIPS ABIEXTENSION to toolchain nameMark Hatle
[YOCTO #7143] When the system is configured for a multilib SDK, such as: require conf/multilib.conf MULTILIBS = "multilib:lib32 multilib:lib64" DEFAULTTUNE = "mips32r2" DEFAULTTUNE_virtclass-multilib-lib32 = "mips64-n32" DEFAULTTUNE_virtclass-multilib-lib64 = "mips64" Only one of the mips64-n32 or mips64 toolchains is built. Causing the other to be unavailable. This is due to both recipes ending up with the same PN. The toolchain uses the TRANSLATED_TARGET_ARCH in it's name, however the target for mips64 and mips64 n32 were the same, causing the conflict. Avoid this conflict by adding the ABIEXTENSION to the name. (From OE-Core rev: 0bcc01121e928d0be7a0550e500425852c63cf98) Signed-off-by: Mark Hatle <mark.hatle@windriver.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>
2012-10-27insane.bbclass and friends: Fix sanity checks and multlib headers for n32Peter Seebach
The n32 architecture is odd, in that it's a mips64 ABI which happens to be 32-bit. To handle this, we need something in the environment which can be used to distinguish it. The obvious place to stash this is the ABI suffix, so we use "n32" as an ABI suffix. This allows a couple of improved checks: 1. In insane.bbclass, we can use "linux-gnun32" to discern that it's okay for a mips64 binary to be a 32-bit binary in some cases. 2. In multilib_header, we can check for the n32 ABI, and use a distinct value. 3. In siteinfo, add linux-gnun32 as a synonym for linux, similar to what's done for linux-gnux32, and tell the mips*-linux-gnun32 variants to pick up the corresponding mips-linux site configs. Note that the multilib header wrapper already has n32 hooks in it, there was just nothing creating -n32 header variants. (From OE-Core rev: c8e8e8ba22eaa335ac72f0e5b317f804035133e2) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-06conf/machine: Clean up configuration values.Peter Seebach
This cleans up and/or corrects a few values from machine includes for consistency with future toolchain sanity checks, and also adds the TUNEVALID and TUNECONFLICTS to documentation.conf. (From OE-Core rev: 6ffe53c721a80cf156b44f59b564f2e899c6af50) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-04conf/machine/include: Cleanup MIPS tunings to match READMEMark Hatle
Cleanup the MIPS tunings to match the new tuning README file. Also add a MIPS specific README file to explain the MIPS specifical architectural issues. Finally correct the variant configurations within the tune-mips32.inc. (From OE-Core rev: efbfa2ace3362393a20340af93e8dcab17a8619a) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27Add basic Mips core tune configRichard Purdie
Acked-by: Mark Hatle <mark.hatle@windriver.com> (From OE-Core rev: b33cdc23c04acfa55df0f764e1648bf030ae5e9c) 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>