Describe how the QEMU defconfigs can be used with an emulated GPU.
Signed-off-by: Heinrich Schuchardt <[email protected]>
---
doc/board/emulation/index.rst | 1 +
doc/board/emulation/video.rst | 63 +++++++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+)
create mode 100644 doc/board/emulation/video.rst
diff --git a/doc/board/emulation/index.rst b/doc/board/emulation/index.rst
index f8908166276..bda2240725f 100644
--- a/doc/board/emulation/index.rst
+++ b/doc/board/emulation/index.rst
@@ -15,6 +15,7 @@ Emulation
qemu-sbsa
qemu-x86
qemu-xtensa
+ video
Also see
diff --git a/doc/board/emulation/video.rst b/doc/board/emulation/video.rst
new file mode 100644
index 00000000000..4943dcabeab
--- /dev/null
+++ b/doc/board/emulation/video.rst
@@ -0,0 +1,63 @@
+.. SPDX-License-Identifier: GPL-2.0-or-later
+
+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 if EDID information is available. Allowable values are ``off`` and
+ ``on``. The default is on.
+
+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 isplay 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 chosed as
+
+ .. code-block::
+
+ 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:
+
+.. code-block:: bash
+
+ 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`` like in the
+following example.
+
+.. code-block:: bash
+
+ qemu-system-riscv64 \
+ -M virt \
+ -nographic \
+ -kernel u-boot
--
2.51.0