summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include
Commit message (Collapse)AuthorAgeFilesLines
* machine/arch-arm64: add -mbranch-protection=standardRoss Burton2023-07-261-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: 63ce207e15bdee7708754a178a19fca64c4c0ee9) 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> (cherry picked from commit 8905639d1cdc5ce809cc5ecd9672f5e86bf8a579) Signed-off-by: Steve Sakoman <steve@sakoman.com>
* qemuboot-x86.inc: allow overwrite of QB_CPUThomas Roos2023-03-061-4/+4
| | | | | | | | | | | | | To test nested kvm with qemu QB_CPU* needs to be modified. E.g. set to "-cpu Haswell-noTSX-IBRS,vmx=on" This allows to overwrite this from local.conf etc. (From OE-Core rev: aa9d145d90893b04cde197e9b5f4dc574e4738e1) Signed-off-by: Thomas Roos <throos@amazon.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-riscv.inc: Add riscv64nc to available tunes listKhem Raj2023-02-241-1/+1
| | | | | | | | | This was missed when riscv64nc was added (From OE-Core rev: 0c549ef5732afdcd96407ceb045983eed2ca75f4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* QB_SMP: allow user modificationTrevor Woerner2023-02-232-2/+2
| | | | | | | | | | Allow a user to override the QM_SMP value giving them the opportunity to select for themselves the number of CPUs to use in qemu. (From OE-Core rev: 70a91e6d0357149c00b97f7e66e16cbc52997a92) Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base: add support for loongarch64Xiaotian Wu2023-02-043-0/+55
| | | | | | | (From OE-Core rev: 759baaceb4dd623d5da12ba0d01540fa080154ba) Signed-off-by: Xiaotian Wu <wuxiaotian@loongson.cn> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/qemu: bump preferred kernel version to 6.1Bruce Ashfield2023-01-261-1/+1
| | | | | | | | | | | 6.1 has been soaking for a while now, so it is time to bump the default qemu version to 6.1 and prepare to remove 5.19. (From OE-Core rev: 91c1f7d4eb9ec5ad683c798812395df3a56747ba) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-x86-64-v3.inc: set QEMU_EXTRAOPTIONS like other tune-* filesMartin Jansa2023-01-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * use Skylake-Client to match QB_CPU_KVM as changed in: https://git.openembedded.org/openembedded-core/commit/?id=6f2af1e5d1537b4d31e14946292bf58f0fd76fc9 * explicitly set -cpu instead of letting qemu to choose based on host cpu * check=false is still useful as e.g. on on AMD Threadripper 3970X: orc/0.4.33-r0 $ PSEUDO_UNLOAD=1 qemu-x86_64 -r 3.2.0 -cpu Skylake-Client -L recipe-sysroot -E LD_LIBRARY_PATH=recipe-sysroot//usr/lib:recipe-sysroot//lib orc/0.4.33-r0/build/meson-private/sanitycheckc_cross.exe qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.01H:ECX.x2apic [bit 21] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.01H:ECX.tsc-deadline [bit 24] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.07H:EBX.hle [bit 4] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.07H:EBX.invpcid [bit 10] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.07H:EBX.rtm [bit 11] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.07H:EBX.rdseed [bit 18] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.80000001H:ECX.3dnowprefetch [bit 8] qemu-x86_64: warning: TCG doesn't support requested feature: CPUID.0DH:EAX.xsavec [bit 1] * if this still doesn't work for you on your host, you might need to downgrade DEFAULTTUNE to e.g. corei7-64 (all all the way back to core2-64), for more details see: https://www.openembedded.org/pipermail/openembedded-core/2018-April/150178.html * the leading space shouldn't be needed, I've kept it for consistency with other QEMU_EXTRAOPTIONS (From OE-Core rev: d1a52559670921389a66a4c26d37481d6611042a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemux86-64: Reduce tuning to core2-64Richard Purdie2023-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Effectively revert "qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 from 2006" (commit 6f2af1e5d1537b4d31e14946292bf58f0fd76fc9) Much as I'd love us to use the latest tuning, we do have some autobuilder hardware which isn't ready for this yet which breaks KVM and some qemu user mode usage as there appear to be TCG bugs too. I suspect we're not the only ones with such hardware. Drop the tune back to core2-64, anyone can easily customise it themselves if they need it. We can revisit this in a year or two as we should be ready then. It has beena good test of the rest of the support which all seems ready. I'd have preferred to use corei7-64 but that causes runqemu.RunqemuTests.test_boot_machine_iso to hang. Leave the newer tune file inclusion so people can change tunes more easily. (From OE-Core rev: 369b1dfa28b1791d45f068acc765190defecd460) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 ↵Alexander Kanavin2023-01-061-2/+2
| | | | | | | | | | | | | | | | | | | | from 2006 This allows us to - test those more recent instruction sets (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE) - benefit from improved performance across the stack both in kvm-driven system emulation and when running on real silicon. For example, glibc: https://www.phoronix.com/news/Glibc-strcasecmp-AVX2-EVEX v4 level is adding AVX-512, which is far less established, particularly Intel has famously backtracked from supporting it in Alder Lake/Raport Lake client CPUs and AMD has only implemented it in very recent Zen4 products: https://www.phoronix.com/news/GCC-11-x86-64-Feature-Levels (From OE-Core rev: 6f2af1e5d1537b4d31e14946292bf58f0fd76fc9) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/machine/include: add x86-64-v3 tunes (AVX, AVX2, BMI1, BMI2, F16C, FMA, ↵Alexander Kanavin2022-12-311-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LZCNT, MOVBE, XSAVE) Qemu 7.2 finally allows us to move beyond building for original Core 2/Core i7 era hardware, and this patch adds support for the newer generations. But first, a bit of background: Recently toolchains gained support for specifying x86-64 'levels' of instruction set support; v3 corresponds to 2013-era Haswell CPUs (and later), with AVX, AVX2 and a few other instructions that were introduced in that generation. I believe this is preferrable to picking a specific CPU model as the baseline. Here's Phoronix's feature article that explains the feature and the available levels: "Both LLVM Clang 12 and GCC 11 are ready to go in offering the new x86-64-v2, x86-64-v3, and x86-64-v4 targets. These x86_64 micro-architecture feature levels have been about coming up with a few "classes" of Intel/AMD CPU processor support rather than continuing to rely on just the x86_64 baseline or targeting a specific CPU family for optimizations. These new levels make it easier to raise the base requirements around Linux x86-64 whether it be for a Linux distribution or a particular software application where the developer/ISV may be wanting to compile with greater instruction set extensions enabled in catering to more recent Intel/AMD CPUs." https://www.phoronix.com/news/GCC-11-x86-64-Feature-Levels Here's gcc docs for it: https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html And here's the formal specification (click on the pdf link): https://gitlab.com/x86-psABIs/x86-64-ABI The actual tune file was created by copying corei7 tunes and doing search/replace on them. Qemu options were dropped as unnecessary. 32 bit tune was dropped as well, as there is no 32 bit only CPU that also supports these new instructions; all of the v3 capable chips are 64 bit. (From OE-Core rev: ac041f90e71dba83b7144c91f929de88aaeae519) Signed-off-by: Alexander Kanavin <alex@linutronix.de> 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>
* meta/conf: update preferred linux-yocto version to v5.19Bruce Ashfield2022-08-091-1/+1
| | | | | | | | | | v5.19 is the latest reference kernel, we bump our qemu machines to use it by default. (From OE-Core rev: 8f3b5cab696704fdc2060c710e3429859736a63a) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* powerpc: Remove invalid GLIBC_EXTRA_OECONFRobert Joslyn2022-05-016-19/+0
| | | | | | | | | | | | | | | | | | | | OE-core previously carried patches to glibc that added optimized sqrt implementations for various PowerPC chips. These were recently removed, which now results in errors when compiling glibc with certian PowerPC machine tunes: checking sysdep dirs... configure: error: The 603e subspecies of powerpc is not supported. Remove setting GLIBC_EXTRA_OECONF with parameters that are no longer valid. Also remove a commented out setting of the variable that probably isn't vaild anyway. Fixes: 2511e937f445 ("glibc: Drop ppc sqrt optimisations") (From OE-Core rev: 40f15066c24720aae36713c9856ffb4fae146a45) Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org> 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>
* qemux86-64: disable legacy i8042 (AT keyboard, PS/2 mouse)Ross Burton2022-04-201-6/+5
| | | | | | | | | | | | | | | | | | | | These devices are historical, modern Linux will just use the USB devices, and occasionally the init of these devices fails: atkbd serio0: Failed to deactivate keyboard on isa0060/serio0 psmouse serio1: Failed to reset mouse on isa0060/serio1: -5 Explicitly add a USB keyboard to go with the USB tablet, and disable the i8042 entirely. [ YOCTO #14718 ] [ YOCTO #14743 ] (From OE-Core rev: c01f47003f34b9ad2fe3d17e1ead84c27ee1e57d) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* riscv: Add tunes for rv64 without compressed instructionsKhem Raj2022-04-192-0/+10
| | | | | | | | (From OE-Core rev: 4790eaf98e030ffeecfbde6644137c9d6d1873d7) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuriscv: Use virtio-tablet-pci for mouseKhem Raj2022-03-201-1/+1
| | | | | | | | | | | | This helps in making mouse response better where transition between host and guest mouse is abrupt and not precise and as a result its difficult to access stuff near the edges. (From OE-Core rev: 010287147d2205790745e6dab8e955e71bc7cac2) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* x86-base.inc: replace intel i965 driver with crocusMarkus Volk2022-03-151-1/+1
| | | | | | | | | | | | | | this fixes do_rootfs for core-image-sato after mesa update: Problem: package packagegroup-core-x11-base-1.0-r1.noarch requires packagegroup-core-x11-xserver, but none of the providers can be installed - conflicting requests - nothing provides mesa-driver-i965 needed by packagegroup-core-x11-xserver-1.0-r40.intel_corei7_64 (try to add '--skip-broken' to skip uninstallable packages) (From OE-Core rev: 63f10412d793c6c10290838eb230f179046f1d23) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/machine: fix QEMU x86 sound optionsMichael Opdenacker2022-03-101-1/+1
| | | | | | | | | | | | | This updates the QEMU sounds options for x86 emulation, when "runqemu" is called with the "audio" argument, to fix the below error: runqemu - ERROR - Failed to run qemu: qemu-system-x86_64: warning: '-soundhw ac97' is deprecated, please use '-device AC97' instead (From OE-Core rev: b802a5dd1a79c7be3bc790223a733ebc9be4f117) Signed-off-by: Michael Opdenacker <michael.opdenacker@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>
* conf/machine: bump qemu preferred versions to 5.15Bruce Ashfield2022-01-121-1/+1
| | | | | | | | | | 5.14 has been removed from the active kernel list, so we make 5.15 the new default. (From OE-Core rev: 24fb6a22332f746e3bef89ff8e5719838f0ed8b5) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: PROVIDES virtual/libgles3Quentin Schulz2021-12-141-0/+1
| | | | | | | | | | | | It's assumed that not all OpenGL ES implementation are compliant with the 3.x specification. Therefore an additional virtual providers is created to explicit compatibility with OpenGL ES 3 specification. Cc: Quentin Schulz <foss+yocto@0leil.net> (From OE-Core rev: 405cd7a37988ced627fe6ad6fd3089c17f59367e) Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.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>
* conf/machine: bump qemu preferred versions to 5.14Bruce Ashfield2021-09-241-1/+1
| | | | | | | | | | 5.14 is the latest reference kernel, so let's make it the default. (From OE-Core rev: af19c44c4af68568de2ddb5c11d8ad34ac600522) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/qemu: Add explict depends for qemu-helper addto_recipe_sysroot taskRichard Purdie2021-09-231-1/+1
| | | | | | | | | | The populate_sysroot task isn't enough for qemu-helper-native, we need it's addto_recipe_sysroot task. This corrects what amounts to bad dependency information to be explicit. (From OE-Core rev: 55623420208bc4c77a61492d2bbcbc71d3123acd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/mips: mips16e: prepend override to MACHINEOVERRIDESQuentin Schulz2021-09-101-1/+1
| | | | | | | | | | | | | | | Add the tune specific override to MACHINEOVERRIDES and not OVERRIDES as is done for all other tune include files. Also prepend it instead of appending so that it's among the leftmost overrides in MACHINEOVERRIDES and has a lower precedence compared to other MACHINEOVERRIDES added later (which usually are added via a =. (prepend)). (From OE-Core rev: c1d524cae8ba5aa1e30e4a66937b8af3d4a67531) Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> 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-1869-13/+13
| | | | | | | | | | | | | | | 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>
* conf/machine: bump qemu preferred versions to 5.13Bruce Ashfield2021-08-181-1/+1
| | | | | | | | | | 5.13 is the latest reference kernel, so let's make it the default. (From OE-Core rev: a7ebb5053a5dd7d0989a15cc4dee7116d3ef0948) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> 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-1313-0/+223
| | | | | | | | | | | | | | 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-02102-1335/+1335
| | | | | | | | | | | | 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>
* qemuriscv: Enable 4 core emulationKhem Raj2021-06-121-0/+1
| | | | | | | | | Helps in running tests a bit faster (From OE-Core rev: 735799a66e52ced9de9431ad3062b13583e3754f) Signed-off-by: Khem Raj <raj.khem@gmail.com> 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>
* qemu-x86: Add commandline options to improve bootRichard Purdie2021-05-131-1/+1
| | | | | | | | | | To try and help with the inermittent rcu stalls and boot issues with qemu add some kernel commandline options commonly used with qemu instances which were suggested may help. (From OE-Core rev: d75cb16ecb3a55fd7631bf7720663e4b196421ee) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuboot-x86: Switch to IvyBridge and q35 instead of pcRichard Purdie2021-05-131-4/+4
| | | | | | | | | | | | | | | | Move from 1996 to 2009 by swapping machine 'pc' for 'q35'. Also move to a CPU which is SMP capable and doesn't have tsc bugs. IvyBridge matches what we're using on the autobuilder. The intent here is to try and improve on some of the intermittent autobuilder issues we're seeing. I'm told that nobody else runs with config this old and it could well be contributing to our issues. Having reliable testing is key to the project and justifies updating this IMO. (From OE-Core rev: 6d9f25782bd585e89c5aaf7046266c848f1e581b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemu: Set SMP to 4 cpus for arm/x86 onlyRichard Purdie2021-05-131-0/+1
| | | | | | | | | | Only qemux86* and qemuarm* support SMP with our current configurations so rework qemu SMP enabling to account for that and only use it on the architectures where it works. (From OE-Core rev: ee371325ce651cc113e43bdeb5d8986d5b84a3f4) 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>
* conf/machine: Enable keyboard and mouse on RISC-V machinesAlistair Francis2021-04-051-0/+1
| | | | | | | | (From OE-Core rev: d115ebea8983641b42202379119ce35d6ee4a3b0) Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/machine: Enable bochs-display on RISC-V machinesAlistair Francis2021-04-051-0/+1
| | | | | | | | | | Enable the bochs-display as q QEMU argument when running on RISC-V machines. (From OE-Core rev: ec085b75a1edb14c6e4dd1dc2f5cdf62f44d0e39) Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tune-cortexa32: Add hard FPUJon Mason2021-03-281-3/+3
| | | | | | | | | | A32 always has NEON and VFP. Set the FPU as hard to always have this enabled and used. (From OE-Core rev: bbca4d664555a8b4e8c4f18da3827c1176dba455) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>