Hi, > As a heads up, I believe we have a similar problem with a few of the CXL IDs. > The root port and type 3 device both use Intel IDs that were not reserved > for this purpose. VID=0x8086, DID=0x7075 and DID=0x0d93
Essentially we have two kinds of PCI devices in qemu. * The ones which try to mimic existing hardware, they usually have the PCI ID of the device they are emulating (and use the qemu subsystem ID). The classic example is the cirrus vga. There are also many intel chipset devices for piix4 ('pc' machine type) and ich9 ('q35' machine type) with intel IDs. * The ones which are PCI class implementations and do not need a specific ID for drivers to accept them. Most of them have a PCI device ID from the 1b36 vendor ID range. The former tend to be older devices (before hardware standardization was a thing, also before we got a range from 1b36 for qemu), and the latter tend to be newer devices. There are also a bunch of exceptions for historical reasons. The ahci emulation has a ich9 id. xhci even has two variants (one mimicking a NEC host adapter, one with qemu device id). So, in short, using the intel IDs is not necessarily a problem. Depends a bit on what kind of device we are talking about. For PCI class devices it usually is more useful to have a qemu ID though. > Switch ports and switch-cci are using valid Hisilicon IDs that are for > emulation of these device only and are registered in our tracker > for these IDs so won't get 'reused'. That is perfectly fine. There is no need to change IDs, although it makes sense to document that fact in docs/specs/pci-ids.rst Moving them to qemu pci id range is an option too if you prefer that. Your choice. take care, Gerd