[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