PCI IDs for QEMU

Red Hat, Inc. donates a part of its device ID range to QEMU, to be used for virtual devices. The vendor IDs are 1af4 (formerly Qumranet ID) and 1b36.

Contact Gerd Hoffmann <kraxel@redhat.com> to get a device ID assigned for your devices.

1af4 vendor ID

The 1000 -> 10ff device ID range is used as follows for virtio-pci devices. Note that this allocation is separate from the virtio device IDs, which are maintained as part of the virtio specification.

1af4:1000

network device (legacy)

1af4:1001

block device (legacy)

1af4:1002

balloon device (legacy)

1af4:1003

console device (legacy)

1af4:1004

SCSI host bus adapter device (legacy)

1af4:1005

entropy generator device (legacy)

1af4:1009

9p filesystem device (legacy)

1af4:1012

vsock device (bug compatibility)

1af4:1040 to 1af4:10ef

ID range for modern virtio devices. The PCI device ID is calculated from the virtio device ID by adding the 0x1040 offset. The virtio IDs are defined in the virtio specification. The Linux kernel has a header file with defines for all virtio IDs (linux/virtio_ids.h); QEMU has a copy in include/standard-headers/.

1af4:10f0 to 1a4f:10ff

Available for experimental usage without registration. Must get official ID when the code leaves the test lab (i.e. when seeking upstream merge or shipping a distro/product) to avoid conflicts.

1af4:1100

Used as PCI Subsystem ID for existing hardware devices emulated by QEMU.

1af4:1110

ivshmem device (Device Specification for Inter-VM shared memory device)

All other device IDs are reserved.

1b36 vendor ID

The 0000 -> 00ff device ID range is used as follows for QEMU-specific PCI devices (other than virtio):

1b36:0001

PCI-PCI bridge

1b36:0002

PCI serial port (16550A) adapter (QEMU PCI serial devices)

1b36:0003

PCI Dual-port 16550A adapter (QEMU PCI serial devices)

1b36:0004

PCI Quad-port 16550A adapter (QEMU PCI serial devices)

1b36:0005

PCI test device (QEMU PCI test device)

1b36:0006

PCI Rocker Ethernet switch device

1b36:0007

PCI SD Card Host Controller Interface (SDHCI)

1b36:0008

PCIe host bridge

1b36:0009

PCI Expander Bridge (-device pxb)

1b36:000a

PCI-PCI bridge (multiseat)

1b36:000b

PCIe Expander Bridge (-device pxb-pcie)

1b36:000d

PCI xhci usb host adapter

1b36:000f

mdpy (mdev sample device), linux/samples/vfio-mdev/mdpy.c

1b36:0010

PCIe NVMe device (-device nvme)

1b36:0011

PCI PVPanic device (-device pvpanic-pci)

1b36:0012

PCI ACPI ERST device (-device acpi-erst)

1b36:0013

PCI UFS device (-device ufs)

All these devices are documented in System Emulation Guest Hardware Specifications.

The 0100 device ID is used for the QXL video card device.