pci-ids.rst 2.8 KB

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