On Tue, Mar 25, 2025 at 4:13 AM Suravee Suthikulpanit <suravee.suthikulpa...@amd.com> wrote: > > Currently, the QEMU-emulated AMD IOMMU device use PCI vendor id 0x1022 > (AMD) with device id zero (undefined). Eventhough this does not cause any > functional issue for AMD IOMMU driver since it normally uses information > in the ACPI IVRS table to probe and initialize the device per > recommendation in the AMD IOMMU specification, the device id zero causes > the Windows Device Manager utility to show the device as an unknown device. > > Since Windows only recognizes AMD IOMMU device with device id 0x1419 as > listed in the machine.inf file, modify the QEMU AMD IOMMU model to use > the id 0x1419 to avoid the issue. This advertise the IOMMU as the AMD > IOMMU device for Family 15h (Models 10h-1fh). > > Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpa...@amd.com> > --- > Changes from v1 > (https://lore.kernel.org/all/20250304183747.639382-1-suravee.suthikulpa...@amd.com/) > * Use the existing device id 0x1419 instead of the proposed new id. > > hw/i386/amd_iommu.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c > index dda1a5781f..b006ead804 100644 > --- a/hw/i386/amd_iommu.c > +++ b/hw/i386/amd_iommu.c > @@ -1767,6 +1767,7 @@ static void amdvi_pci_class_init(ObjectClass *klass, > void *data) > PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); > > k->vendor_id = PCI_VENDOR_ID_AMD; > + k->device_id = 0x1419; > k->class_id = 0x0806; > k->realize = amdvi_pci_realize; > > -- > 2.34.1 >
Reviewed-by: Yan Vugenfirer <yvuge...@redhat.com>