QEMU/Devices/Video cards

From Computernewb Wiki
Jump to navigation Jump to search

This page details all the supported video cards that can be used in QEMU.

How to add a video card

You can add a video card with the following:

qemu-system-(arch) -vga <model>

You can also use

qemu-system-(arch) -device [adapter device ID],...

to add the device by hand.

Devices

i386/x86_64

Model Name Bus Description Minimum OS
std (VGA, secondary-vga) Standard (Bochs) VGA PCI Virtually every OS has a driver for the "standard" VGA.
If the guest OS you're running supports VESA 2.0 VBE extensions, you can access high resolution/color video modes.
All
isa-vga VGA ISA Similar to the standard Bochs VGA adapter, but on the ISA bus instead of PCI.
There is real reason to use this unless dealing with a very cranky/picky OS that doesn't work with PCI VGA adapters.
Same as vga
cirrus (cirrus-vga) Cirrus Logic GD5446 PCI Cirrus Logic GD5446 video card, from the mid 1990s.
Most Linux distributions and all Windows versions from Windows 95 include support for this video card. It is recommended for older guests (operating systems from the 90s), like Windows 9x.
There is also a Windows 3.1 driver available on Vogons.
Windows: Windows 3.1
isa-cirrus Cirrus Logic GD5446 ISA Same as cirrus, but on the ISA bus instead of PCI. Same as cirrus
vmware (vmware-svga) VMWare SVGA II PCI A implementation of the VMWare SVGA II device. which has some bugs but is usable.
NOTICE: THIS DOES NOT IMPLEMENT SVGA 3D.
It is recommended to use this card on Windows 9x operating systems, because it allows higher resolutions and a True Color (32-bit) mode. Note: This card only supports 32-bit mode and 16 color mode, so anything that strictly requires 256 colors will not run. It also requires a special driver to be installed.
Windows: Windows 95
qxl (qxl-vga, qxl for secondary) Red Hat QXL PCI Red Hat QXL graphics card, which comes with support for 2D games and basic 3D animations/games.
Recommended if you want very high resolutions.
Most Linux distributions automatically detect this card and install it appropriately, but Windows requires installation of a special driver.
Windows: Windows XP onwards
virtio VirtIO GPU PCI The virtio-gpu paravirtualized GPU. Offloads 2D and 3D graphics acceleration to a host's graphics card. Linux: Linux 4.2 (4.4 recommended), Windows: Windows 10 onwards
ramfb RAM Framebuffer RAM (MMIO) A special device that sets aside a chunk of the guest's memory map for a simple unaccelerated framebuffer.
QEMU's spcial fw_cfg interface is used by the operating system or firmware platform to configure parameters of the framebuffer (it's width/height, for instance).
SeaBIOS has basic VGA text mode emulation (no graphics modes).
OVMF has a UEFI GOP implementation that a operating system can utilize (the "Basic Render Driver" that Windows 8 onwards comes with will use it, for instance).
Depends on firmware platform (UEFI will support anything which uses UEFI GOP, for instance)
Linux can also drive it on its own apparently
none None N/A No graphics card inserted (only QEMU monitor) All

SPARC

Model Name Bus Description Minimum OS
tcx Sun TCX Framebuffer MMIO (presumably; RISCs loved their MMIO) This is the default framebuffer for sun4m machines. It only works on sun4m machines. It allows 8-bit and 24-bit color depths and is set to a fixed resolution of 1024x768. ?
cg3 Sun CG3 Framebuffer MMIO Sun CG3, simple 8-bit framebuffer. It only works on sun4m machines. It allows a resolution of 1024x768 (in OpenBIOS) and 1152x900 (in OBP) resolutions. This is useful for running older Solaris versions. It seems also that most SPARC Linux distributions require you to use this driver or it doesn't work properly. ?