[PATCH v2 0/4] arm: qemu: Enable Bochs, console buffering, USB keyboard
Alper Nebi Yasak
alpernebiyasak at gmail.com
Mon Aug 14 19:39:40 CEST 2023
Now that the driver for the Bochs VGA card emulated by QEMU is no longer
limited to x86 architectures [1], this series enables it on arm and
arm64 virtual machines to provide a graphical interface. In line with
that series this also enables console buffering and USB keyboard.
Tested with the Debian 12 installer using GRUB EFI:
$ tools/buildman/buildman -o build/qemu_arm64 --boards=qemu_arm64 -w
$ cd build/qemu_arm64
$ curl -L -o debian.img \
https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/debian-12.0.0-arm64-netinst.iso
$ qemu-system-aarch64 \
-machine virt -cpu cortex-a53 -m 4G -smp 4 \
-bios u-boot.bin \
-serial stdio -device VGA \
-nic user,model=virtio-net-pci \
-device virtio-rng-pci \
-device qemu-xhci,id=xhci -device usb-kbd -device usb-tablet \
-drive if=virtio,file=debian.img,format=raw,readonly=on,media=cdrom
And with one using extlinux.conf:
$ [...]
$ curl -L -o head.img.gz \
https://deb.debian.org/debian/dists/bookworm/main/installer-arm64/current/images/netboot/SD-card-images/gtk/firmware.none.img.gz
$ curl -L -o partition.img.gz \
https://deb.debian.org/debian/dists/bookworm/main/installer-arm64/current/images/netboot/SD-card-images/gtk/partition.img.gz
$ zcat head.img.gz partition.img.gz >debian.img
$ [...]
Both can get to a graphical installer just fine, in addition to U-Boot
video console showing up in a GTK window.
[1] video: bochs: Remove the x86 limitation
https://lore.kernel.org/u-boot/20230723044041.1089804-1-bmeng@tinylab.org/
Changes in v2:
- Add new patch for doc section on booting Linux distros
- Improve and simplify the qemu command line used for testing
v1: https://lore.kernel.org/u-boot/20230808191901.1268429-1-alpernebiyasak@gmail.com/
Alper Nebi Yasak (4):
arm: qemu: Enable Bochs video support
arm: qemu: Enable PRE_CONSOLE_BUFFER
arm: qemu: Enable usb keyboard as an input device
doc: qemu: arm: Add a section on booting Linux distros
arch/arm/Kconfig | 10 ++++
board/emulation/qemu-arm/Kconfig | 4 ++
board/emulation/qemu-arm/qemu-arm.c | 5 ++
board/emulation/qemu-arm/qemu-arm.env | 3 ++
configs/qemu_arm64_defconfig | 2 -
configs/qemu_arm_defconfig | 2 -
doc/board/emulation/qemu-arm.rst | 76 +++++++++++++++++++++++++++
7 files changed, 98 insertions(+), 4 deletions(-)
base-commit: 832148f675e427060be074c276956962fa9b5cb6
--
2.40.1
More information about the U-Boot
mailing list