Commit Graph

538 Commits

Author SHA1 Message Date
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
Alistair Francis
b8c2575002 qemuriscv: Generate a wic rootFS with a larger filesystem
This allows us to generate a rootFS with a large filesystem for use with
QEMU.

(From OE-Core rev: e06439200e44999c1e2f88d7d6c651da13698ca7)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
6e3fac8de6 tune-riscv: Drop littleendian and introduce bigendian tune
Default riscv is little-endian moreover most of other arches define
bigendian as tune and treats absense as litteendian, this make risc-v
fall in line

(From OE-Core rev: cd6f377591a7bd7b3c61ce580f997aaeffab3df3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
2bdb7ad840 powerpc-tunes: Introduce bigendian tune
This helps in defining LE tunes and at the same time specifies
endianness on compiler cmdline clearly, clang e.g. defaults to
little-endian always, so unless specified with -mbig-endian won't
compile the code right

(From OE-Core rev: e0fd699d398f0e88fb208970dea7b74e6e9431fe)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Alexander Kanavin
58e85c60cd qemu: switch to '-vga std' emulated hardware from vmware/cirrus for x86/mips
This is the qemu default since qemu 2.2, is generally supported better,
and is recommended by upstream. It also has already been in use for arm/risc
and ovmf.

Additional information:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13466
https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/

'-vga virtio' emulated hardware remains in use when virgl is enabled via a runqemu override.

Also, adjust the error whitelist, as there is a number of new messages
coming from the drivers that are not actual errors.

(From OE-Core rev: 73cb104f3307736f4922f2e0c9648f9b2d3b3b6b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Bruce Ashfield
456a92116a qemu: bump linux-yocto preferred version to 5.2
(From OE-Core rev: 0504760978b65627bb265503896bc2dfb0709475)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
b0bad37101 qemu: set default RAM to 256M for all machines
There was a discussion about what amount of RAM is appropriate for a
default; the outcome was that for now it is still 256M. Some qemu machine
definitions have however set this to 512M so for the sake of
treating all architectures fairly, they are reset back to 256M.

Also runqemu is adjusted to use 256M if QB_MEM is not set at all.

http://lists.openembedded.org/pipermail/openembedded-core/2019-August/285900.html

(From OE-Core rev: 04c01b6cc5be3e6d45d0e04571640648a5655a8b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Andre McCurdy
2c7e401a1e tune-ep9312.inc: fix TUNEVALID description
(From OE-Core rev: 62afb4e79f3f8e491db290e5932a54f3dc3f962a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
a1a16df6ac tune-arm1176jz-s.inc: add support for arm1176jz-s CPU specific tuning
(From OE-Core rev: 95823b7eab141f8969367c4f9b76b73bf2e664dc)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
8c6004341e tune-arm1136jf-s.inc: add hardfloat support
(From OE-Core rev: 6e057cc367ab9cf82901ba8c7c3cfab35c4cb9ab)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Changqing Li
4e7557640c qemumips/qemumips64: move QB_SYSTEM_NAME to corresponding conf
Configuration:
MACHINE = qemumips64

bitbake lib32-core-image-minimal
runqemu slirp nographic qemumips64 ext4

Error:
ERROR - Failed to run qemu: qemu-system-mips: unable to find CPU model 'MIPS64R2-generic'

Fixed by moving QB_SYSTEM_NAME to Respective configuration file

(From OE-Core rev: e724e8836ed614ff8eaa0d0d9c51d22ee62576b3)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Alistair Francis
dd6358438c qemuriscv64: Specify the firmware as a bios instead of kernel
Now that we have a -bios option for the RISC-V virt machine in QEMU we
can pass OpenSBI in via -bios and the kernel in via -kernel. We no
longer need to pass the kernel in via -device loader so let's remove
that.

(From OE-Core rev: 65e7f371f19e053d0bac7771a80615f6bada74c7)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Changqing Li
060e7db0c4 qemuboot-x86: move QB_SYSTEM_NAME to corresponding conf
Configrations:
MACHINE: qemux86-64
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

Reproduce steps:
bitbake lib32-core-image-minimal
runqemu qemux86-64 nographic lib32-core-image-minimal

Errors:
qemu cannot bootup since:
Booting from ROM...
This kernel requires an x86-64 CPU, but only detected an i686 CPU.
Unable to boot - please use a kernel appropriate for your CPU.
QEMU: Terminated

For lib32 image, override has x86, so the qemubin set to qemu-system-i386,
fix by move QB_SYSTEM_NAME to corresponding conf, don't use the override

(From OE-Core rev: ffaf86f175b2e6caa3a0067f7b3725930b053715)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Alistair Francis
e7810c7601 qemuriscv: Build uImage for RISC-V machines
(From OE-Core rev: 12dc5569d832d57b52ed68bc9009506b2d183795)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-21 00:33:22 +01:00
Alistair Francis
aad4228593 qemuriscv64: Add the QEMU RISC-V 64-bit machine
The include is split ready to add the 32-bit RISC-V machine as soon as
glibc supports 32-bit RISC-V.

This is based on the work in the meta-riscv layer, thanks to Khem for
starting this.

(From OE-Core rev: 11b6020dff4550fc3a42e04bc1e86baf37942c62)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-19 22:13:39 +01:00
Kevin Hao
317a0984e7 tune-thunderx: Set the correct PACKAGE_EXTRA_ARCHS_tune-thunderx
The value of PACKAGE_EXTRA_ARCHS_tune-thunderx should be based on
PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto instead of armv8a-crc-crypto.
Otherwise we would get some sanity check error like this:
    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 armv8a-crc-crypto thunderx qemuarm64) for DEFAULTTUNE (thunderx) does not contain TUNE_PKGARCH (aarch64)

(From OE-Core rev: 13cc0f7c0bd98ea228e9bdf51043117d38837ce7)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-11 13:26:55 +01:00
Alexander Kanavin
701da54231 qemux86: use a Core 2 Duo CPU instead of the original circa-1993 Pentium
This matches what the qemux86_64 is currently using, and
will allow testing the instructions added in the meantime;
particularly various SSE extensions are now enabled.

(From OE-Core rev: f3b1e577ec94c849d0354f5679257f02ef4e4fe9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-17 07:07:28 +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
Bruce Ashfield
bab9491c32 machine: bump preferred version to 5.0
(From OE-Core rev: bb4f4a202d400fd1cf630c29f864d472258cc005)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-12 11:57:41 -07:00
Steven Hung (洪于玉)
c3c8c5b557 tune-cortexa*: Add missing BASE_LIB tune overrides
For multilib to work correctly, BASE_LIB overrides must be provided.

(From OE-Core rev: b32ec63e48a3552f2e7f3cc5caf61432af716283)

Signed-off-by: teven Hung (洪于玉) <Steven.Hung@mediatek.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-11 05:36:37 -07:00
Steven Hung (洪于玉)
f30aa452f6 tune-cortexa35: fixed typo
"cortexa53" -> "cortexa35"

(From OE-Core rev: caa2eb174a997e98c52362442e9a1ccfa4f7e9f7)

Signed-off-by: Steven Hung (洪于玉) <Steven.Hung@mediatek.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-11 05:36:37 -07: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
34ec0fce5f tune-cortexa72: add tunes for ARM Cortex-A72
It looks that the Cryptography engine is mandatory in this
platform.

https://developer.arm.com/products/processors/cortex-a/cortex-a72

(From OE-Core rev: 0edda66097407c62821af9e98579f5fcf906e938)

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
ayaka
2de809c942 tune-cortexa53: add tunes for ARM Cortex-A53
It looks that the Cryptography engine is mandatory in this
platform.

https://developer.arm.com/products/processors/cortex-a/cortex-a53

(From OE-Core rev: 4f470b175bf03fb25ae3fef563ad317bc22338ae)

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
ayaka
43885d55d0 tune-cortexa35: add tunes for ARM Cortex-A35
https://developer.arm.com/products/processors/cortex-a/cortex-a35

(From OE-Core rev: 8a3c9ed2865743d3de9fe47d44f1118f7491627b)

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
ayaka
905af0b8b0 tune-cortexa32: add tunes for ARM Cortex-A32
https://developer.arm.com/products/processors/cortex-a/cortex-a32

(From OE-Core rev: e436a754b5c23760be4a616e8fab4ce55b285c9c)

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
ayaka
3e03926836 ThunderX: update the armv8a rules
I am not familiar with the big endian, so I don't update it.
I don't have much information about the Cavium ThunderX,
it looks like it supports all the ARM instructions.

(From OE-Core rev: b6c6fa72bdffd5d8995058e8e0e21d5561cc16c6)

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
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
156a2d9860 arm-tunes: Remove -march option if mcpu is already added
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>
2019-01-28 23:14:09 +00:00
Khem Raj
9a55fce4a9 tune-cortexa5.inc: Add tune options for vfpv4
(From OE-Core rev: dfcfc735b38851e95282a0b5e12d0d59b951ffe5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-21 23:44:22 +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
Serhey Popovych
2468becd4b arch-powerpc64.inc: Use elfv2 ABI when building with musl
Historically first PowerPC ABI was big-endian only (elfv1 currently). It
is standard ABI for both 32-bit ppc and 64-bit ppc64 architectures.

With PowerPC little-endian support new ABI was introduced (elfv2) and it
is used primarily with ppc64le target only. While it has support for
big-endian it is not commonly used and elfv1 still preferred.

Musl does support only elfv2 ABI for both LE and BE and does not have
any plans to support elfv1.

Since then to build for powerpc64 with musl new ABI should be used. As
expected it is not compatible with elfv1 but that isn't problem as long
as there is no binary distributed software or assembly code written for
elfv1 ABI.

(From OE-Core rev: 68c9641855199f34aabe1050e863c21830116fe1)

Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15 17:10:52 +00:00
Serhey Popovych
14dc19f868 tune-power[5-7].inc: Disable QEMU usermode usage
The QEMU usermode fails with invalid instruction error when
used with those tunes.

(From OE-Core rev: c1c881ef7f4faf94f385ae742030382122ee5816)

Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15 17:10:51 +00:00
Serhey Popovych
e2901424ed tune-power[5-7].inc: Fix DEFAULTTUNE values
It is ppcpX, not ppcprX, where X is 6 or 7. While there select 32bit
tune for P5 machine to bring it inline with P6 and P7.

(From OE-Core rev: 220eee184a4f510cdf7c55e2aed00330abee1553)

Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-15 17:10:51 +00:00
Hongxu Jia
bc0d9a1a5e machine/qemu*: fix kernel finish crng init more and more slowly
Just adding `-device virtio-rng-pci' to the QEMU invocation will
add the device with a default host backend. As of QEMU 1.3+,
the default backend is to use the host's /dev/random as a
source of entropy. [1]

When the entropy pool is empty, reads from /dev/random will
block until additional environmental noise is gathered. [2]

For Yocto, if call runqemu frequently, it will consume lots
of host's /dev/random, and kernel finish crng init in guest get
more and more slowly.

Here are 4 times runqemu boot test:

[    3.464432] random: crng init done
[   20.874030] random: crng init done
[   23.583589] random: crng init done
[   23.858945] random: crng init done

Modify entropy source to /dev/urandom device on the host which
returns random bytes using a pseudorandom number generator seeded
from the entropy pool. Reads from this device do not block and
kernel finish crng init in guest will not delay.

Of course, the side effect is obviously, we lost the quality of
randomness, but the modification is only on runqemu script
rather than real embedded device, and it benefits oeqa efficiency
in which many cases call runqemu especially multiple oeqa builds
on one host.

After apply the fix:

[    3.364670] random: crng init done
[    4.619061] random: crng init done
[    3.403897] random: crng init done
[    3.450717] random: crng init done

[1] https://wiki.qemu.org/Features/VirtIORNG
[2] http://man7.org/linux/man-pages/man4/random.4.html

(From OE-Core rev: 853644f82eb3205ef3efc1ea3959c7225dfacf61)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-14 11:14:40 +00:00
Chunrong Guo
2bef0ae54a ppce500v2: remove spe
*The PowerPC SPE support is split off to a separate powerpcspe port

(From OE-Core rev: c67bc9bdcbcf46ed54dfbafd1bb6e405ed77f86a)

Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-14 11:14:39 +00:00
Angelo Dureghello
385f3bf640 conf/machine/include: add mcf5441x cpu type tuning
This patch adds tuning for the mcf5441x ColdFire family.

(From OE-Core rev: 89e7192b607361769c03b939437c9815672ceadb)

Signed-off-by: Angelo Dureghello <angelo@sysam.it>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-08 14:13:54 +01:00
Angelo Dureghello
2c2250b6a2 conf/machine/include: add m68k architecture definitions
(From OE-Core rev: 475ca28ab1b42fc0307669edae220afb97dd15c3)

Signed-off-by: Angelo Dureghello <angelo@sysam.it>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-08 14:13:54 +01:00
Anuj Mittal
5e9c1b23f4 tune-core2: use n270 instead of core2duo
Fixes warnings in builds using core2-32 tune:

warning: TCG doesn't support requested feature: CPUID.80000001H:EDX.syscall [bit 11]
warning: TCG doesn't support requested feature: CPUID.80000001H:EDX.lm [bit 29]

when executing postinsts using qemu-i386.

i386 target doesn't enable CPUID_EXT2_SYSCALL and CPUID_EXT2_LM [1]
while cpu choice of core2duo that we use for core2-32 TUNE does [2].
Use n270 cpu instead to use with qemu which supports SSSE3 and doesn't
have these bits enabled [3].

[1] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L739
[2] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L1439
[3] https://github.com/qemu/qemu/blob/master/target/i386/cpu.c#L1603

Fixes [YOCTO #12916]

(From OE-Core rev: 3db567d7835c6bb158d0f6c5b5533835a0181c45)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 17:38:07 +01:00
Bruce Ashfield
ec71111c9c qemu/bsp: update 4.15 preferred versions to 4.18
4.18 is replacing 4.15 as the latest kernel in the upcoming
release, so we update our preferred versions to match.

(From OE-Core rev: e12f9e7ede7eea408d6a97233c7c8df97e8bfb26)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28 10:30:28 +01:00
Maciej Pijanowski
23a9cdba16 meta: replace deprecated "SERIAL_CONSOLE"
SERIAL_CONSOLE was already deprecated in 2013, yet still some
machine configuration files were using it. This patch replaces
it with SERIAL_CONSOLES, which is the successor.

The default value in systemd-serialgetty.bb can also be safely
transitioned from SERIAL_CONSOLE to SERIAL_CONSOLES, as this
recipe already uses SERIAL_CONSOLES within do_install().

The documentation seems to be already up do date.
beaglebone-yocto.conf in the bsp-guide already uses
SERIAL_CONSOLES. The ref-manual redirects from SERIAL_CONSOLE
to SERIAL_CONSOLES.

[YOCTO #12653]

(From OE-Core rev: e5bde3d466869df9fce559e49842ac245153d045)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Maxin B. John
fae1ccdcf5 machine: remove kernel-modules from RRECOMMENDS
qemumips,qemumips64 and x86 based machines include kernel-modules by
default. Remove the kernel modules from RRECOMMENDS to make it consistent
across the machines.

Tested using core-image-sato on qemumips, qemumips64, qemux86 and
qemux86-64

[YOCTO #12383]

(From OE-Core rev: 1c4d9f46d5d94ea15d0c0d68c412ec05b9f51820)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-02 09:30:11 +01: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
Richard Purdie
83d791089f image/image-live: Improve handling of live/iso/hddimg types (drop NOISO/NOHDD)
The logic can be improved and the historical NOISO/NOHDD variables
moved into the class and out of common code.

The variables are also then removed in favour of directly controlling
the behaviour from IMAGE_FSTYPES in line with all the other image types.

(From OE-Core rev: a052caed563a09a01f5a3ea1f0477f379c05bee0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-21 09:34:40 +01:00
Khem Raj
52a71a394e tune-mips-74k.inc: add tune file for 74kc mips
(From OE-Core rev: ee054e12f6d4c4cbda66ebbc7d09ecad964a84d1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-12 23:34:24 +01:00
He Zhe
af5c776a28 qemu.inc: Change kernel provider assignment to a weaker one
Currently we have local.conf included before qemu.inc, and ${DISTRO}.conf
after qemu.inc. They both possibly specify their expected kernel providers.
To let other config files override it in real use, this commit changes
kernel provider assignment to ??= .

(From OE-Core rev: 07e06abeb6b7ae5047c4b70818cd8873302e4940)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:07:16 +01:00