PCI Express support in qemu
Isaku Yamahata, VA Linux Systems Japan K.K.
Akio Takebe, Fujitsu Limited
Xen Summit Asia Shanghai, China
November 20, 2009
Agenda
Introduction
New chipset emulator in qemu
Summary
Future work
Introduction
Background
Current Qemu emulates
For Pentium Pro/II/III
North bridge: I440FX
South bridge: PIIX3 (and PIIX4 for acpi power
management and pci hot plug)
Hardware release date: May 1996
Too old compared to new real hardware
features
Motivation
More PCI features are wanted
Currently Qemu only supports part of PCI specs.
e.g.64bit BAR isn't supported.
More buses/slots
Qemu only supports single host bus (for PC emulation). Sub
PCI bus isn't supported.
3+ pci bus(96+ slots)/96+ pcie slots are wanted.
Brige emulation: filtering aren't implemented.
Motivation(cont.)
PCI express features
Hot plug, power management, ARI, AER
Native pass through of PCI express device to
guest OS
PCI express devices can be passed through as PCI
device, though.
Need to fill those gap between newer real
hardware features and qemu emulation mainly
in PCI related area.
New chipset emulator for new
hardware features
Why new chipset?
Keep the currently supported chipset(I440FX,
PIIX) for legacy compatibility.
Old OSes must run on it.
add new features for modern OSes without
legacy compatibility.