================ 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 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 (shared memory, ``docs/specs/ivshmem-spec.txt``) 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 (:doc:`pci-serial`) 1b36:0003 PCI Dual-port 16550A adapter (:doc:`pci-serial`) 1b36:0004 PCI Quad-port 16550A adapter (:doc:`pci-serial`) 1b36:0005 PCI test device (:doc:`pci-testdev`) 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 :doc:`index`. The 0100 device ID is used for the QXL video card device.