summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/qemuarm.conf
AgeCommit message (Collapse)Author
2023-10-11meta/conf/machine: remove SERIAL_CONSOLES_CHECKRoss Burton
There's no need for this variable anymore, as all consoles listed in SERIAL_CONSOLES are checked for their existence before a getty is started. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10runqemu/qemurunner: Use nodelay with tcp serial connectionsRichard Purdie
This disables Nagle's algorithm for our tcp serial connections which may be causing data transfer issues. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-10-10qemux86/qemuarm: Drop kernel version overridesRichard Purdie
Drop the version overrides for the kernel for the x86 and arm machines so we can go back to following the distro versions. The reasons for these versions is mostly historical at this point as the issues were resolved. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-07-14qemuarm: pin kernel to 6.1Ross Burton
The 6.4 kernel causes parselog failures when Xorg starts: (II) FBDEV(0): checking modes against framebuffer device... (II) FBDEV(0): mode "640x480" test failed (II) FBDEV(0): mode "640x480" test failed (II) FBDEV(0): mode "640x480" test failed (II) FBDEV(0): mode "640x480" test failed (II) FBDEV(0): mode "640x480" not found It appears to be specific to qemuarm without GL. Until this is resolved, pin the qemuarm BSP to 6.1. 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>
2023-04-20machine/qemuarm*: don't explicitly set vmallocRoss Burton
In 5c6064 the qemuarm* machines gained vmalloc=256, because in testing Bruce was seeing problems when the vmalloc area was too big for the memory size of the machine (eg 256MB). The intention was for the area to be very small, but 256 bytes is too small and the kernel sets a minimal vmalloc area of 16MiB: [ 0.000000] vmalloc area is too small, limiting to 16MiB However, a 16MiB area is too small and results in pages of messages when you try and use the system: [ 242.822481] vmap allocation for size 4100096 failed: use vmalloc=<size> to increase size There have been a number of changes since this commit, remove the explicit vmalloc argument and use the default. I've tested that the system still boots locally. [1] early_vmalloc(), https://elixir.bootlin.com/linux/latest/source/arch/arm/mm/mmu.c#L1170 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2023-02-23QB_SMP: allow user modificationTrevor Woerner
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. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-07machine/qemuarm*: Fix UBOOT_MACHINE valueDaiane Angolini
Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-17machine/qemuarm*: use virtio graphicsJon Mason
Switch to using virtio graphics for the Arm QEMU machines. You will noticed the difference in the dmesg by seeing: [ 2.693337] [drm] pci: virtio-gpu-pci detected at 0000:00:10.0 Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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. Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-30Convert 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 "_". Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-13qemu: Set SMP to 4 cpus for arm/x86 onlyRichard Purdie
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. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-11runqemu: correct forcing of ttyS0Jon Mason
Some platforms do not use ttyS* for their serial consoles (e.g., qemuarm and qemuarm64). The hardcoding of this can cause issues. Modify runqemu to use the serial consoles defined in SERIAL_CONSOLES instead of hardcoding. Signed-off-by: Jon Mason <jon.mason@arm.com> Change-Id: I746d56de5669c955c5e29d3ded70c0a4d3171f17 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-11runqemu: add QB_GRAPHICSJon Mason
Add a new runqemu field for VGA devices. Currently, these are being set in QB_OPT_APPEND, which can make them difficult to override if importing the config file into another one. Signed-off-by: Jon Mason <jon.mason@arm.com> Change-Id: I8cb9527954c5b06c083c42fe2466cb3338584b7d Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-05machine/qemuarm*: add vmalloc kernel parameterBruce Ashfield
On kernel's v5.11+, we get the following warning after boot: [ 47.287826] vmap allocation for size 3149824 failed: use vmalloc=<size> to increase size It can be fixed by passing the vmalloc page size explicitly for our ARM machines. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-09-24qemuboot: Add QB_RNG variableKhem Raj
RNG passthru has been enabled on all qemu machines but its being added to each one of them, with this patch its turned into QB variables which defaults to host passthru, yet it can be overridden if needed via machine or config metadata if needed. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-08-01conf/machine: set UBOOT_MACHINE for qemuarm and qemuarm64Ross Burton
These machines support booting U-Boot, so set the machine appropriately. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-23qemu: uprev v4.2.0 -> v5.0.0Sakib Sajal
Major update after v4.2. Changes: - os_find_datadir() was changed after the v4.2 release causing v5.0 to not find the bios and not boot the image. Fix is sent to upstream qemu. See: qemu/find_datadir.patch - v5.0 binary had host contamination for dynamically linked libraries, "--extra-ldflags='${LDFLAGS}'" in EXTRA_OECONF resolved the issue - bluetooth code was removed: qemu.git$ git show 1d4ffe8dc7 hence removed PACKAGECONFIG[bluez] - -show-cursor qemu option is now deprecated, updated scripts/runqemu to use updated option instead - added PACKAGECONFIG definitions - added qemu-ptest to conf/distro/include/ptest-packagelists.inc - increased support for ARM architecture, cpu and board - removed patches merged upstream and refreshed existing ones Testing: Build core-image-minimal against the machines in openembedded-core/meta/conf/machine and succesfully booted with qemu v5.0 Ran qemu-ptest on x86-64 and arm64 with identical results: PASS: 1166 SKIP: 0 FAIL: 0 Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> Signed-off-by: Joe Slater <joe.slater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-05-30qemuarm: check serial consoles vs /proc/consolesTrevor Gamblin
Note that this patch affects qemuarm AND qemuarm64. When booting a VM and during operation, the following message periodically appears: INIT: Id "hvc0" respawning too fast: disabled for 5 minutes This is because hvc0 is specified in SERIAL_CONSOLES in qemuarm.conf and qemuarm64.conf, but it is not in /proc/consoles and SERIAL_CONSOLES_CHECK is not specified, leaving getty to attempt to enable hvc0. Add SERIAL_CONSOLES_CHECK to both conf files so that hvc0 isn't enabled if it hasn't been set there or in local.conf. Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-14qemuarm: Disable highmem when QB_MACHINE is virtKhem Raj
running ptests on qemuarm returns fails since it finds errors in kernel logs like below *********************** Central error: [ 4.338465] pci-host-generic 4010000000.pcie: ECAM ioremap failed *********************** Since its a 32bit kernel 4010000000 address is truncated to 10000000 and ends up in conflicts with VIRT_PCIE_MMIO, which ranges from 0x10000000 to 0x3efeffff This is happening because the linux-yocto kernel is not compiled with LPAE support, however, virt machine for qemuarm assumes that by default Should LPAE be enabled by default in kernel config is a separate question Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29qemu: set default RAM to 256M for all machinesAlexander Kanavin
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 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29machine: clean up config filesJon Mason
Beautify the machine config files by making the names and descriptions more uniform and verbose Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-12qemuarm: Swap for an arm7ve (A15) configurationJon Mason
Add new QEMU BSP for a Arm Cortex-A15 system and use this as qemuarm, moving the old armv5te Versatile PB based machine to qemuarmv5. The new machine uses the QEMU virt machine type, which should be faster to emulate and updates the qemuarm support to a modern architecture. Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-13machine/qemu*: fix kernel finish crng init more and more slowlyHongxu Jia
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 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-28qemu/bsp: update 4.15 preferred versions to 4.18Bruce Ashfield
4.18 is replacing 4.15 as the latest kernel in the upcoming release, so we update our preferred versions to match. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-09machines: bump default linux-yocto to v4.15Bruce Ashfield
Ensure that the qemu* machines are building the latest available kernel in master. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-01-29meta: don't use deprecated functions from utils.bbclassRoss Burton
These functions were moved to meta/lib/oe in 2010 and the base_* functions in utils.bbclass were intended to be a short-term compatibility layer. They're still used in a few places, so update the callers to use the new functions. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-23qemu: bump default version to 4.12Bruce Ashfield
Not all the qemu machines carry default kernel specifications. While we could drop these references, we'll bump them to 4.12 to pick up the latest and remove them in future commits. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-19qemu conf: replace deprecated option with new optionChen Qi
Replace the deprecated '-usbdevice' option with '-device usb-xx' option. This would fix runqemu boot error like below. '-usbdevice' is deprecated, please use '-device usb-...' instead Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05x86-base.inc, qemuarm.conf: prefer 4.10 version of linux-yoctoMartin Jansa
* 4.8 version was removed in: commit 466e6e45ca04a07ebe1b1f52de747f077b362d54 Author: Bruce Ashfield <bruce.ashfield@windriver.com> Date: Tue Mar 28 08:58:07 2017 -0400 linux-yocto: drop 4.8 recipes We have 4.1 (LTSI), 4.4 (LTS), 4.9 (LTS/LTSI) and 4.10 available in master. 4.8 is no longer required, so we drop the recipe to keep the version selection under control. * causing each build to start with 188 lines of this stuff: NOTE: preferred version 4.8% of linux-yocto not available (for item virtual/kernel) NOTE: versions of linux-yocto available: 4.1.38+gitAUTOINC+7140ddb86e_4d2c95e78c 4.10.5+gitAUTOINC+01f18cba44_b97dcd4f06 4.4.56+gitAUTOINC+271b0c8d51_01aaede0a2 4.9.17+gitAUTOINC+8b97a445fa_3ff3760c2a NOTE: preferred version 4.8% of linux-yocto not available (for item kernel-module-raid456) NOTE: versions of linux-yocto available: 4.1.38+gitAUTOINC+7140ddb86e_4d2c95e78c 4.10.5+gitAUTOINC+01f18cba44_b97dcd4f06 4.4.56+gitAUTOINC+271b0c8d51_01aaede0a2 4.9.17+gitAUTOINC+8b97a445fa_3ff3760c2a Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-13Use weak assignment for SERIAL_CONSOLES in qemu configuration filesChen Qi
Use weak assignment for SERIAL_CONSOLES in qemu configuration files so that the value could serve as a default value and could be easily overridden in configuration files like local.conf. When using the default value for SERIAL_CONSOLES in qemux86-64,we would have annoying messages on console complaining about respawning getty on ttyS1. Although the value is set by purpose, at least we need to provide an easy way to override it. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-09-27machine/qemu*: Add comment regarding the reason for virtio-rng-pciNathan Rossi
Bring across the comment that was in runqemu regarding why the virtio-rng-pci device was needed. This comment is added to each location where the virtio-rng-pci device is added. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-23runqemu: Move virtio RNG to machine configurationNathan Rossi
Not all QEMU machines (outside of those available in OE-Core) are capable of using the virtio-rng-pci device due to various machine models not having a pci/virtio bus. This makes it such that the use of the '-device virtio-rng-pci' flag to QEMU is machine specific. This patch removes the general addition of the flag to all runqemu targets and adds the flag into the QB_OPT_APPEND for all the qemu* machines in OE-Core that support its use (which is all of them). Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-09-09qemuarm.conf: set PREFERRED_VERSION_linux-yoctoRobert Yang
The base_version_less_or_equal() will raise errors if PREFERRED_VERSION_linux-yocto is None. For example, when we build DISTRO = "nodistro", PREFERRED_VERSION_linux-yocto is not be defined since it is defined in poky.conf, and then bitbake will choose the higher version which is 4.8 currently, so set PREFERRED_VERSION_linux-yocto to 4.8, otherwise, runqemu can't boot it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-09qemuarm: Add DTB file new kernelRichard Purdie
For kernels after 4.7, we need to ensure the DTB file for the kernel is used by runqemu. Doing this conditionally based upon the kernel verison being built seems to be the only way forward for this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-09qemuarm.conf: set vars for runqemuRobert Yang
These info are from old runqemu. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24qemurunner: Use two serial ports and log console with a threadRandy Witt
qemu can freeze and stop responding if the socket buffer connected to a tcp serial connection fills up. This happens of course when the reader of the serial data doesn't actually read it. This happened in the qemurunner code, because after checking for the "login:" sentinel, data was never again read from the serial connection. This patch solves the potential freeze by adding a thread to continuously read the data from the console and log it. So it also will give a full log of the console, rather than just up to the login prompt. To simplify this patch, another serial port was also added to use for the sole purpose of watching for the sentinel as well as being the interactive serial port. This will also prevent the possibility of lots of debug data on the console preventing the sentinel value from being seen due to interleaved text. Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2012-03-19Simple typo in qemuarm.conf file: "versaile" -> "versatile"Robert P. J. Day
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-22conf/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. 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>
2010-07-19qemu machines: Switch to use linux-wrsBruce Ashfield
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-05-18Move all QEMU machines to use a common kernel recipe set and versionJoshua Lock
The different kernel recipes encapsulate functionality groups for machines, therefore it makes sense to have all the QEMU machines using the same kernel recipe. Switch the QEMU machines to default to the "linux" recipes for their kernel and bump the latest recipe from linux-2.6.32 to 2.6.33. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2008-07-18conf/machine: Add beagleboard from OE.devRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4868 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-02conf/machine: Sync various changes with OERichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2656 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-29conf/machine: Set KERNEL_IMAGE_TYPE and kernel-base RDEPENDS for various ↵Richard Purdie
machines git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2599 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-08conf/machine/include: Rename to .conf to .inc filesRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2388 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-06-11machine configs: drop MACHINE_TASK_PROVIDER which is set in bitbake.confMarcin Juszkiewicz
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1903 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-01-08machine/qemu: Set image size in common fileRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1132 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-12-22qemu*.conf: Increase image size to 200MB to fit sdkRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1080 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-11-29Rename linux-openzaurus to linux-rpRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@977 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-11-16conf/machine: Merge task-base updatesRichard Purdie
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@856 311d38ba-8fff-0310-9ca6-ca027cbcb966