Jump to content

QEMU ARM (qemu-vexpress): Difference between revisions

From postmarketOS Wiki
add usage notes, update the article in general
Usage: use --arch=arm in command, explain how to get serial output
Line 10: Line 10:
$ pmbootstrap init  # Choose device "qemu-vexpress"
$ pmbootstrap init  # Choose device "qemu-vexpress"
$ pmbootstrap install --no-fde
$ pmbootstrap install --no-fde
$ pmbootstrap qemu --image-size=2G --display=gtk
$ pmbootstrap qemu --image-size=2G --display=gtk --arch=arm
</syntaxhighlight>
</syntaxhighlight>


Using the <code>--display=gtk</code> parameter is recommended. The default display, SDL, will show two windows (of which one is unused) and you won't be able to look at the serial output.
Using the <code>--display=gtk</code> parameter is recommended. The default display, SDL, will show two windows (of which one is unused) and you won't be able to look at the serial output. In the GTK interface, click on ''View / Show Tabs'' to display all available outputs as tabs next to each other. Check the <code>serial0</code> output for what it is actually doing as the boot will probably take a few minutes, unless you have a very fast PC.


=== What works ===
=== What works ===

Revision as of 06:05, 7 January 2018

Note CPU emulation is slow! Consider using qemu-amd64 instead if x86_64 is your native architecture.

This device is used to emulate an ARM Versatile Express for Cortex-A9. Vexpress (Versatile Express) is the reference architecture from the ARM Foundation. It simulates the armv7 architecture and a lot of other hardware (like graphics hardware). QEMU supports many other ARM architectures (see qemu-system-arm -machine help).

Contributors

  • MartijnBraam
  • mmaret

Usage

$ pmbootstrap init  # Choose device "qemu-vexpress"
$ pmbootstrap install --no-fde
$ pmbootstrap qemu --image-size=2G --display=gtk --arch=arm

Using the --display=gtk parameter is recommended. The default display, SDL, will show two windows (of which one is unused) and you won't be able to look at the serial output. In the GTK interface, click on View / Show Tabs to display all available outputs as tabs next to each other. Check the serial0 output for what it is actually doing as the boot will probably take a few minutes, unless you have a very fast PC.

What works

  • Compilation of kernel, system and initramfs
  • Storage
  • Network

What does not work

  • Keyboard and mouse
  • Qemu 2.0.0 is too old (but it's known to be working with 2.6.50)[1]

Notes

  • It boots only if you specify a separate -dtb flag, it doesn't use the dtb attached to the kernel (but pmbootstrap calls it right).

Links

Screenshot

  • QEMU unlock screen


  • QEMU running weston

See also