Commit Graph

25 Commits

Author SHA1 Message Date
Romain Naour
7dcb9e98b5 board/qemu: remove the Qemu version from readme.txt
The Qemu version present in readme.txt files was needed when
the Buildroot's Qemu defconfig was tested manually using the
qemu-system-<arch> binary already present on the host.

This information is now incorrect since we are using host-qemu
package, currently at 4.2.0 version, to do a runtime test since
0c79350638.

For m68k-q800, we can use the upstream qemu since 4.2.0 release
[1].

So, remove this line from the readme.txt.

[1] https://www.qemu.org/2019/12/13/qemu-4-2-0/

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-26 13:44:21 +02:00
Romain Naour
011206b2bf board/qemu: add defconfig file name as tag after the qemu command line
This commit add the name of the Qemu defconfig file after each
qemu command line in order to retrieve it easily.

Since a readme.txt can be shared between several Qemu defconfig, we
need at least one qemu command line in readme.txt for each defconfig.

For now, ignore the qemu_arm_vexpress_tz_defconfig since it fail to build
due to python script issue [1]. Anyway the arm vexpress boot is tested
with qemu_arm_vexpress_defconfig.

[1] http://lists.busybox.net/pipermail/buildroot/2020-February/273738.html

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-13 21:51:12 +02:00
Romain Naour
278f908d55 configs/qemu{x86, x86_64}: add a serial console
The current Buildroot defconfigs for qemu_x86 and qemu_x86_64
instantiate a console on tty1, which appears on QEMU's
graphical window. Add a console on the serial port (ttyS0) to
be used later for gitlab testing.

This change is need since the script used for gitlab testing
needs to use a serial output with pexpect.

This change is similar to the one made for raspberrypi [1] to
handle HDMI and serial console:

This requires three changes:
 1. have two 'console=' entries in the kernel command line: tty1,
    then ttyS0;
 2. change BR2_TARGET_GENERIC_GETTY_PORT to "console", so it starts
    a getty on the last console= passed to the kernel, ttyS0;
 3. add a new getty on tty1 to the generated inittab.

Step 2 is actually obtained by removing BR2_TARGET_GENERIC_GETTY_PORT
entirely from the defconfigs, since "console" is the default value.

Step 3 requires a post-build script since the Buildroot makefiles can
configure only one console.

Note: instead of simply adding a new getty on ttyS0 (which would
work) this patch actually changes BR2_TARGET_GENERIC_GETTY_PORT to
instantiate a console on UART, then adds back tty1 via
post-build.sh. This is done only to avoid the "GENERIC_SERIAL" comment
where we instantiate a console on QEMU graphical window, then
instantiate a really-serial console on another line.

The result is these two inittab lines:

  console::respawn:/sbin/getty -L  console 0 vt100 # GENERIC_SERIAL
  tty1::respawn:/sbin/getty -L  tty1 0 vt100 # QEMU graphical window

[1] 20878a1017

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-16 22:24:56 +01:00
Yann E. MORIN
626c9705d2 board/qemu: ensure root is available before mounting it
On my machine, it happens once in a while that the virtualised machine
boots too fast for the rootfs to be available at the time the kernel
tries to mount it.

For example, board/qemu/arm-vexpress/readme.txt suggested changing
"-smp 1" up to "-smp 4". But doing so here causes a kernel panic:

    VFS: Cannot open root device "mmcblk0" or unknown-block(0,0): error -6
    Please append a correct "root=" boot option; here are the available partitions:
    1f00          131072 mtdblock0
     (driver?)
    1f01           32768 mtdblock1
     (driver?)
    Kernel panic - not syncing: VFS: Unable to mount root fs on
    unknown-block(0,0)

So, add the oh-so-useful 'rootwait' option to all kernel command lines
for qemu defconfigs.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Mark Corbin <mark.corbin@embecosm.com>
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-06-25 22:55:58 +02:00
Waldemar Brodkorb
03fb00f217 qemu: update defconfigs to Linux 4.16.7
All linux configs are renamed to a version neutral filename
to avoid further renaming on kernel bumps.

Defconfig               Kernel  Qemu            Network Status
--------------------------------------------------------------
aarch64_virt            4.16.7   2.12.0           YES     OK
arm_versatile           4.16.7   2.12.0           YES     OK
arm_versatile_nommu     4.16.7   2.12.0           YES     OK (3)
arm_vexpress            4.16.7   2.12.0           YES     OK
m68k_mcf5208            4.16.7   2.12.0           YES     OK
m68k_q800               4.16.7   q800-v2.11.0     NO (2)  OK
microblazebe            4.16.7   2.12.0           YES     OK
microblazeel            4.16.7   2.12.0           YES     OK
mips32r2el_malta        4.16.7   2.12.0           YES     OK
mips32r2_malta          4.16.7   2.12.0           YES     OK
mips32r6el_malta        4.16.7   2.12.0           YES     OK
mips32r6_malta          4.16.7   2.12.0           YES     OK
mips64el_malta          4.16.7   2.12.0           YES     OK
mips64_malta            4.16.7   2.12.0           YES     OK
mips64r6el_malta        4.16.7   2.12.0           YES     OK
mips64r6_malta          4.16.7   2.12.0           YES     OK
nios2-10m50             4.16.7   2.12.0           NO      OK
or1k                    4.16.7   2.12.0           NO      OK
ppc_g3beige             4.16.7   2.12.0           YES     OK
ppc_mpc8544ds           4.16.7   2.12.0           YES     OK
ppc_virtex_ml507        4.16.7   2.12.0           NO      OK
ppc64_pseries           4.16.7   2.12.0           YES     OK
ppc64le_pseries         4.16.7   2.12.0           YES     OK
ppc64_e5500             4.16.7   2.12.0           YES     OK
sh4                     4.16.7   2.12.0           YES     OK
sh4eb                   4.16.7   2.12.0           NO (1)  OK
sparc_ss10              4.16.7   2.12.0           YES     OK
sparc64_sun4u           4.16.7   2.12.0           YES     OK
x86                     4.16.7   2.12.0           YES     OK
x86_64                  4.16.7   2.12.0           YES     OK
xtensa_lx60             4.16.7   2.12.0           YES     OK
xtensa_lx60_nommu       4.16.7   2.12.0           YES     OK

(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel patch required, switched to devicetree usage

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-02 22:23:39 +02:00
Thomas Petazzoni
c191e24c33 board/qemu/x86*: use quotes around -append Qemu option value
This helps the toolchains.free-electrons.com build logic re-use
directly the Qemu command lines from this readme.txt file, by having a
-append option similar to the ones used in other readme.txt files.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-27 22:37:34 +01:00
Waldemar Brodkorb
28d97609b2 configs/qemu: bump to the latest kernel version
Xtensa patches no longer required, the make target name changed
to Image. The Qemu binary for OpenRisc was renamed upstream.
I removed the x86->x86_64 symlink, independent files preferred.

Defconfig               Kernel  Qemu            Network Status
--------------------------------------------------------------
aarch64_virt            4.11.3   2.9.0           YES     OK
arm_versatile           4.11.3   2.9.0           YES     OK
arm_versatile_nommu     4.4.70   2.9.0           YES     OK
arm_vexpress            4.11.3   2.9.0           YES     OK
m68k_mcf5208            4.11.3   2.9.0           YES     OK
m68k_q800               4.11.3   q800-v2.4.0     NO (2)  OK
microblazebe            4.11.3   2.9.0           YES     OK
microblazeel            4.11.3   2.9.0           YES     OK
mips32r2el_malta        4.11.3   2.9.0           YES     OK
mips32r2_malta          4.11.3   2.9.0           YES     OK
mips32r6el_malta        4.11.3   2.9.0           YES     OK
mips32r6_malta          4.11.3   2.9.0           YES     OK
mips64el_malta          4.11.3   2.9.0           YES     OK
mips64_malta            4.11.3   2.9.0           YES     OK
mips64r6el_malta        4.11.3   2.9.0           YES     OK
mips64r6_malta          4.11.3   2.9.0           YES     OK
nios2-10m50             4.11.3   2.9.0           NO      OK
or1k                    4.11.3   2.9.0           NO      OK (5)
ppc_g3beige             4.11.3   2.9.0           YES     OK
ppc_mpc8544ds           4.11.3   2.9.0           YES     OK
ppc_virtex_ml507        4.9.6    2.9.0           NO      OK (3)
ppc64_pseries           4.11.3   2.9.0           YES     OK
sh4                     4.9.6    2.9.0           YES     OK (4)
sh4eb                   4.9.6    2.9.0           NO (1)  OK (4)
sparc_ss10              4.11.3   2.9.0           YES     OK
sparc64_sun4u           4.11.3   2.9.0           YES     OK
sparc_sun4u             4.11.3   2.9.0           YES     OK
x86                     4.11.3   2.9.0           YES     OK
x86_64                  4.11.3   2.9.0           YES     OK
xtensa_lx60             4.11.3   2.9.0           YES     OK
xtensa_lx60_nommu       4.11.3   2.9.0           YES     OK

(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel oops with 4.11.3 on boot
(4) - System is extremely slow with 4.11.3, needs further investigation
(5) - Qemu binary got renamed to qemu-system-or1k

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-06-07 22:49:41 +02:00
Gustavo Zacarias
f282b13a27 qemu/x86*: update instructions to use virtio
Switch the invocation command to use virtio-blk and virtio-net for
better performance.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-30 14:58:10 +02:00
Gustavo Zacarias
1968440f35 configs/qemu: enable SMP for x86 & x86_64
This is the 21st century, so enable SMP for them.

[Peter: add note to readme.txt about how emulate a SMP system in QEMU]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-01-08 19:04:23 +01:00
Gustavo Zacarias
122d613b57 configs/qemu: specify drive image file format (raw)
Specify that the drive image file format is raw to avoid warnings and
restrictions.
Also switch to -drive syntax for all configs.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-12-04 21:26:56 +01:00
Gustavo Zacarias
bb16580a46 configs/qemu: bump to the latest linux version
ppc-mpc8544ds: switch to custom kernel config since the new 4.3-shipped
mpc85xx_basic_defconfig doesn't work with Qemu.
Incidentally while cleaning it up it now seems to work fine with newer
qemu versions.

sparc64_sun4u: ditch ne2k driver since it's useless, and add the e1000
driver which works fine.

x86: stick to 4.2.x kernels since 4.3 doesn't work right with uclibc
(any variant) based toolchains.

Results table:

Defconfig               Kernel          Qemu    Network Status
--------------------------------------------------------------
aarch64_virt            4.3             2.3.0   YES     OK
arm_nuri                3.10.93         2.3.0   NO(1)   OK(2)
arm_versatile           4.3             2.3.0   YES     OK
arm_vexpress            4.3             2.3.0   YES     OK
microblazebe            4.3             2.3.0   YES     OK
microblazeel            4.3             2.3.0   YES     OK
mips64el_malta          4.3             2.3.0   YES     OK
mips64_malta            4.3             2.3.0   YES     OK
mipsel_malta            4.3             2.3.0   YES     OK
mips_malta              4.3             2.3.0   YES     OK
ppc_g3beige             4.3             2.3.0   YES     OK
ppc_mpc8544ds           4.3             2.3.0   YES     OK
ppc_virtex_ml507        4.3             2.3.0   NO      OK
ppc64_pseries           4.3             2.3.0   YES     OK
sh4                     4.3             2.3.0   YES     OK
sh4eb                   4.3             2.3.0   NO(1)   OK
sparc_ss10              4.3             2.3.0   YES     OK
sparc64_sun4u           4.3             2.3.0   YES     OK
sparc_sun4u             4.3             2.3.0   YES     OK
x86                     4.2.6           2.3.0   YES     OK(3)
x86_64                  4.3             2.3.0   YES     OK
xtensa_lx60             4.3             2.3.0   YES     OK

(1) - Supposed to work but broken, probably Qemu emulation issue
(2) - In like 1/3 runs it fails to start properly
(3) - linux 4.3.0 doesn't like uclibc-based toolchains (net issues)

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-11 23:36:39 +01:00
Gustavo Zacarias
f68b7585bc configs/qemu: update x86_64
Switch to kernel 4.0.
Enable evdev for extra X testing.
Drop bloat/redundant options.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-04-16 08:02:45 +02:00
Gustavo Zacarias
312990555c configs/qemu: update infos for latest qemu version
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-12-16 00:46:20 +01:00
Gustavo Zacarias
eca8acf79d qemu/x86_64: update to the latest versions
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-07 17:00:36 +02:00
Waldemar Brodkorb
6aabd7cc44 qemu-x86_64: update kernel
Update to Linux Kernel 3.16.3.
Enable Ext4 by default.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-02 21:04:26 +02:00
Gustavo Zacarias
e7124e3677 configs/qemu: fix and bump relevant kernel/header versions
Tweak the configs to deal with b155f5a5ab
fallout.
And bump to the latest kernel versions.

As of this commit the microblaze qemu targets seem broken, probably
because of commit 14e527eb66 or some qemu
limitation.

SPARC seems to have issues as well, the kernel seems to go down with an
unhandled exception with qemu 1.7.0

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-07 22:37:43 +01:00
Gustavo Zacarias
1c7b9de8e0 configs/qemu: bump relevant config versions
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-05 23:49:16 +01:00
Gustavo Zacarias
2c859079cd configs/qemu: bump relevant config versions
arm_nuri needs some DT fixups to switch to the 3.11.x series since it's
now default for that kernel defconfig.

[Peter: adjust comment in sparc defconfig to match]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-04 15:06:08 +02:00
Gustavo Zacarias
309290e1fa configs/qemu: bump relevant config versions
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-07-30 23:28:33 +02:00
Gustavo Zacarias
332687c8fd configs/qemu: bump relevant config versions
While at it add the missing network interfaces to configurations that
support it.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-07-08 08:30:44 +02:00
Gustavo Zacarias
244404a11d configs/qemu: bump relevant configs to kernel version 3.8.x
Problematic configurations not bumped:

arm-versatilepb - IRQ failure for symbios scsi
sh4-r2d - Qemu still doesn't emulate advanced features from the UART
sparc-ss10 - Illegal instruction

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-03-01 16:11:07 +01:00
Gustavo Zacarias
a5a9b728da qemu/x86_64: update to use kernel 3.7.1
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-30 12:32:38 +01:00
Gustavo Zacarias
790c3f0ca2 qemu/x86_64: update to use kernel 3.6.6
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-15 22:43:35 +01:00
Gustavo Zacarias
190806ed72 qemu/x86_64: update to use kernel 3.4.7
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-31 23:40:37 +02:00
Gustavo Zacarias
3e974ba2d2 qemu_x86_64: add new qemu defconfig
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-11 21:36:09 +01:00