vhost: simplify vhost_dev_enable_notifiers
[qemu.git] / docs / specs / pci-ids.txt
blobe463c4cb3a22a1edb8e853179ac02dc09b7b1a59
2 PCI IDs for qemu
3 ================
5 Red Hat, Inc. donates a part of its device ID range to qemu, to be used for
6 virtual devices.  The vendor IDs are 1af4 (formerly Qumranet ID) and 1b36.
8 Contact Gerd Hoffmann <kraxel@redhat.com> to get a device ID assigned
9 for your devices.
11 1af4 vendor ID
12 --------------
14 The 1000 -> 10ff device ID range is used as follows for virtio-pci devices.
15 Note that this allocation separate from the virtio device IDs, which are
16 maintained as part of the virtio specification.
18 1af4:1000  network device (legacy)
19 1af4:1001  block device (legacy)
20 1af4:1002  balloon device (legacy)
21 1af4:1003  console device (legacy)
22 1af4:1004  SCSI host bus adapter device (legacy)
23 1af4:1005  entropy generator device (legacy)
24 1af4:1009  9p filesystem device (legacy)
25 1af4:1012  vsock device (bug compatibility)
27 1af4:1040  Start of ID range for modern virtio devices.  The PCI device
28    to      ID is calculated from the virtio device ID by adding the
29 1af4:10ef  0x1040 offset.  The virtio IDs are defined in the virtio
30            specification.  The Linux kernel has a header file with
31            defines for all virtio IDs (linux/virtio_ids.h), qemu has a
32            copy in include/standard-headers/.
34 1af4:10f0  Available for experimental usage without registration.  Must get
35    to      official ID when the code leaves the test lab (i.e. when seeking
36 1af4:10ff  upstream merge or shipping a distro/product) to avoid conflicts.
38 1af4:1100  Used as PCI Subsystem ID for existing hardware devices emulated
39            by qemu.
41 1af4:1110  ivshmem device (shared memory, docs/specs/ivshmem-spec.txt)
43 All other device IDs are reserved.
45 1b36 vendor ID
46 --------------
48 The 0000 -> 00ff device ID range is used as follows for QEMU-specific
49 PCI devices (other than virtio):
51 1b36:0001  PCI-PCI bridge
52 1b36:0002  PCI serial port (16550A) adapter (docs/specs/pci-serial.txt)
53 1b36:0003  PCI Dual-port 16550A adapter (docs/specs/pci-serial.txt)
54 1b36:0004  PCI Quad-port 16550A adapter (docs/specs/pci-serial.txt)
55 1b36:0005  PCI test device (docs/specs/pci-testdev.txt)
56 1b36:0006  PCI Rocker Ethernet switch device
57 1b36:0007  PCI SD Card Host Controller Interface (SDHCI)
58 1b36:0008  PCIe host bridge
59 1b36:0009  PCI Expander Bridge (-device pxb)
60 1b36:000a  PCI-PCI bridge (multiseat)
61 1b36:000b  PCIe Expander Bridge (-device pxb-pcie)
62 1b36:000d  PCI xhci usb host adapter
63 1b36:000f  mdpy (mdev sample device), linux/samples/vfio-mdev/mdpy.c
64 1b36:0010  PCIe NVMe device (-device nvme)
65 1b36:0011  PCI PVPanic device (-device pvpanic-pci)
66 1b36:0012  PCI ACPI ERST device (-device acpi-erst)
68 All these devices are documented in docs/specs.
70 The 0100 device ID is used for the QXL video card device.