Emulation of a graphics adapter
Currently QEMU’s bochs-display is the only emulated GPU that U-Boot’s
generic QEMU defconfigs support. It emulates a PCIe-connected graphics card
with VESA 2.0 VBE extensions.
The following parameters can be specified:
- edid
controls whether EDID information is available. Allowable values are
offandon. The default ison.- vgamem
specifies the display memory size. The default value is 16 MiB. For UHD resolution 32 MiB is required.
The following configuration parameters are relevant:
- CONFIG_VIDEO_BOCHS
enable support for the Bochs GPU.
- CONFIG_VIDEO_BOCHS_SIZE_X
defines the display width.
- CONFIG_VIDEO_BOCHS_SIZE_Y
defines the display height.
- CONFIG_VIDEO_PCI_DEFAULT_FB_SIZE
sets the framebuffer size that QEMU can use for a device driver that is enabled after relocation. This should be chosen as
CONFIG_VIDEO_PCI_DEFAULT_FB_SIZE >= 4 * CONFIG_VIDEO_BOCHS_SIZE_X * CONFIG_VIDEO_BOCHS_SIZE_Y
Here is an example QEMU invocation for qemu-riscv64_smode_defconfig:
qemu-system-riscv64 \
-M virt \
-device bochs-display,vgamem=33554432 \
-serial mon:stdio \
-device qemu-xhci \
-device usb-kbd \
-kernel u-boot
mon:stdio provides a serial console, qemu-xhci a USB root hub,
usb-kbd a USB keyboard.
To start QEMU without GPU emulation, use parameter -nographic, as shown in
the following example:
qemu-system-riscv64 \
-M virt \
-nographic \
-kernel u-boot