Jump to content

QEMU ARM (qemu-vexpress): Difference between revisions

From postmarketOS Wiki
Migrate from https://github.com/postmarketOS/pmbootstrap/wiki
 
Knuxify (talk | contribs)
add type=vm
 
(26 intermediate revisions by 14 users not shown)
Line 1: Line 1:
<blockquote>''This page is specific to running the <code>arm</code> version of Qemu. Make sure to also read the '''[[common Qemu notes]]'''!''
{{note|See [[:Category:QEMU]] for usage instructions. This page only contains information specific to the qemu-vexpress port... and it isn't included (anymore) in pmaports. Consider using one of the others instead.}}
</blockquote>
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).
{{Infobox device
 
| manufacturer = QEMU
QEMU supports many other ARM architectures (see <code>qemu-system-arm -machine help</code>).
| name = vexpress
| codename = qemu-vexpress
| architecture = armv7
| type = vm
| status_usbnet = -
| status_flashing = -
| status_touch = -
| status_screen = Y
| status_wifi = -
| status_xwayland = Y
| status_fde =
| status_mainline = Y
| status_battery = -
| status_3d = Y
| status_accel = -
| status_audio =
| status_bluetooth = -
| status_camera = -
| status_gps = -
| status_mobiledata = -
| status_sms = -
| status_calls = -  
| booting = no
}}


=== Contributors ===
=== Contributors ===
* MartijnBraam
* MartijnBraam
* mmaret
* mmaret
* ollieparanoid
=== Usage ===
<syntaxhighlight lang="shell-session">
$ pmbootstrap init  # Choose device "qemu-vexpress"
$ pmbootstrap install
$ pmbootstrap qemu --image-size=2G --display=gtk --arch=arm
</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. 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 ===
 
* Serial output
* Compilation of kernel, system and initramfs
* It boots but only if you specify a seperate <code>-dtb</code> flag, it doesn't use the embedded dtb
* Storage
* Storage
* Network
* Network


=== What does not work ===
=== 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)[https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/merge_requests/1029#note_85243928]


* Keyboard and mouse
=== Notes ===
* It boots only if you specify a separate <code>-dtb</code> flag, it doesn't use the dtb attached to the kernel (but pmbootstrap calls it right).


=== Links ===
=== Links ===
* https://wiki.linaro.org/PeterMaydell/QemuVersatileExpress
* https://wiki.linaro.org/PeterMaydell/QemuVersatileExpress


=== Screenshot ===
=== Screenshot ===
* QEMU unlock screen
[[File:Qemu unlock screen.png|500 px]]<br />
* QEMU running weston
[[File:Qemu weston.png|500 px]]


[[File:http://i.imgur.com/Hwq0ryI.png|Qemu unlock screen]]<br />
=== See also ===
[[File:http://i.imgur.com/AWRDDQ1.png|Weston]]
* [[QEMU]]

Latest revision as of 09:06, 25 March 2025

Note See Category:QEMU for usage instructions. This page only contains information specific to the qemu-vexpress port... and it isn't included (anymore) in pmaports. Consider using one of the others instead.
This device is marked as not booting.
QEMU vexpress
Manufacturer QEMU
Name vexpress
Codename qemu-vexpress
Type vm
Hardware
Architecture armv7
postmarketOS
Category testing
Pre-built images no
Mainline yes


Contributors

  • MartijnBraam
  • mmaret
  • ollieparanoid

Usage

$ pmbootstrap init  # Choose device "qemu-vexpress"
$ pmbootstrap install
$ 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

  • Serial output
  • 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