[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 5/6] hw/i386/amd_iommu: Set PCI static/const fields via PCIDevice
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 5/6] hw/i386/amd_iommu: Set PCI static/const fields via PCIDeviceClass |
Date: |
Mon, 13 Mar 2023 16:30:30 +0100 |
Set PCI static/const fields once in amdvi_pci_class_init.
They will be propagated via DeviceClassRealize handler via
pci_qdev_realize() -> do_pci_register_device() -> pci_config_set*().
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
hw/i386/amd_iommu.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c
index 9f6622e11f..8e4ce63f8e 100644
--- a/hw/i386/amd_iommu.c
+++ b/hw/i386/amd_iommu.c
@@ -1511,9 +1511,7 @@ static void amdvi_init(AMDVIState *s)
amdvi_set_quad(s, AMDVI_MMIO_STATUS, 0, 0x98, 0x67);
/* reset device ident */
- pci_config_set_vendor_id(s->pci.dev.config, PCI_VENDOR_ID_AMD);
pci_config_set_prog_interface(s->pci.dev.config, 00);
- pci_config_set_class(s->pci.dev.config, 0x0806);
/* reset AMDVI specific capabilities, all r/o */
pci_set_long(s->pci.dev.config + s->pci.capab_offset,
AMDVI_CAPAB_FEATURES);
@@ -1623,6 +1621,10 @@ static const TypeInfo amdvi_sysbus = {
static void amdvi_pci_class_init(ObjectClass *klass, void *data)
{
DeviceClass *dc = DEVICE_CLASS(klass);
+ PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
+
+ k->vendor_id = PCI_VENDOR_ID_AMD;
+ k->class_id = 0x0806;
set_bit(DEVICE_CATEGORY_MISC, dc->categories);
dc->desc = "AMD IOMMU (AMD-Vi) DMA Remapping device";
--
2.38.1
- [PATCH 0/6] hw/i386/amd_iommu: Orphanize & QDev cleanups, Philippe Mathieu-Daudé, 2023/03/13
- [PATCH 1/6] MAINTAINERS: Mark AMD-Vi emulation as orphan, Philippe Mathieu-Daudé, 2023/03/13
- [PATCH 2/6] hw/i386/amd_iommu: Explicit use of AMDVI_BASE_ADDR in amdvi_init, Philippe Mathieu-Daudé, 2023/03/13
- [PATCH 3/6] hw/i386/amd_iommu: Remove intermediate AMDVIState::devid field, Philippe Mathieu-Daudé, 2023/03/13
- [PATCH 4/6] hw/i386/amd_iommu: Move capab_offset from AMDVIState to AMDVIPCIState, Philippe Mathieu-Daudé, 2023/03/13
- [PATCH 5/6] hw/i386/amd_iommu: Set PCI static/const fields via PCIDeviceClass,
Philippe Mathieu-Daudé <=
- [PATCH 6/6] hw/i386/amd_iommu: Factor amdvi_pci_realize out of amdvi_sysbus_realize, Philippe Mathieu-Daudé, 2023/03/13
- Re: [PATCH 0/6] hw/i386/amd_iommu: Orphanize & QDev cleanups, Philippe Mathieu-Daudé, 2023/03/13