Hi All,
With QEMU 7.0.0 and SeaBIOS 1.16.0, virtual machines with a PCIe graphics card connected to a PCIe Root Port, rather than the Root Complex, as recommended by the QEMU PCI Express Guidelines[1], are unable to use VESA BIOS Extensions display modes. For example,
qemu-system-x86_64 \ -no-user-config \ -nodefaults \ -machine q35,accel=kvm \ -m 1G \ -cdrom "$iso" \ -device VGA
works well and can use many VBE display modes, while
qemu-system-x86_64 \ -no-user-config \ -nodefaults \ -machine q35,accel=kvm \ -m 1G \ -cdrom "$iso" \ -device pcie-root-port,id=pci.1,bus=pcie.0 \ -device VGA,bus=pci.1
only shows a few text display modes. This is the case for VGA, qxl-vga, and virtio-vga devices. `info qtree` shows the device as `type: PCIE` in both configurations. High-resolution graphics modes are available when using UEFI (OVMF) in both configurations.
Am I correct in assuming this is a limitation of SeaVGABIOS? Is this expected behavior, or a bug? If it's unlikely to change soon, would it make sense for me to propose documenting this limitation in the QEMU PCI Express Guidelines?
I'd appreciate any insights you might have.
Thanks, Kevin