diff mbox series

[09/15] hw/pci-host/i440fx: Move i440fx_realize() into PCII440FXState section

Message ID 20230611103412.12109-10-shentey@gmail.com (mailing list archive)
State New, archived
Headers show
Series Q35 and I440FX host bridge QOM cleanup | expand

Commit Message

Bernhard Beschow June 11, 2023, 10:34 a.m. UTC
i440fx_realize() realizes the PCI device inside the host bridge
(PCII440FXState), but is implemented between i440fx_pcihost_realize() and
i440fx_init() which deal with the host bridge itself (I440FXState). Since we
want to append i440fx_init() to i440fx_pcihost_realize() later let's move
i440fx_realize() out of the way.

Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
 hw/pci-host/i440fx.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

Comments

Philippe Mathieu-Daudé June 12, 2023, 10:24 a.m. UTC | #1
On 11/6/23 12:34, Bernhard Beschow wrote:
> i440fx_realize() realizes the PCI device inside the host bridge
> (PCII440FXState), but is implemented between i440fx_pcihost_realize() and
> i440fx_init() which deal with the host bridge itself (I440FXState). Since we
> want to append i440fx_init() to i440fx_pcihost_realize() later let's move
> i440fx_realize() out of the way.

Yes, i440fx_foo is is PCI PF#0 (physical function) of the
i440fx_pcihost_foo (host bridge) device. We could rename
i440fx_foo -> i440fx_pf0_foo / i440fx_pcifunc0_foo / i440fx_func0_foo
for clarity.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>

> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
> ---
>   hw/pci-host/i440fx.c | 18 +++++++++---------
>   1 file changed, 9 insertions(+), 9 deletions(-)
diff mbox series

Patch

diff --git a/hw/pci-host/i440fx.c b/hw/pci-host/i440fx.c
index 88beaf99c4..9df4688b2e 100644
--- a/hw/pci-host/i440fx.c
+++ b/hw/pci-host/i440fx.c
@@ -65,6 +65,15 @@  struct I440FXState {
  */
 #define I440FX_COREBOOT_RAM_SIZE 0x57
 
+static void i440fx_realize(PCIDevice *dev, Error **errp)
+{
+    dev->config[I440FX_SMRAM] = 0x02;
+
+    if (object_property_get_bool(qdev_get_machine(), "iommu", NULL)) {
+        warn_report("i440fx doesn't support emulated iommu");
+    }
+}
+
 static void i440fx_update_memory_mappings(PCII440FXState *d)
 {
     int i;
@@ -229,15 +238,6 @@  static void i440fx_pcihost_realize(DeviceState *dev, Error **errp)
     memory_region_add_coalescing(&phb->conf_mem, 0, 4);
 }
 
-static void i440fx_realize(PCIDevice *dev, Error **errp)
-{
-    dev->config[I440FX_SMRAM] = 0x02;
-
-    if (object_property_get_bool(qdev_get_machine(), "iommu", NULL)) {
-        warn_report("i440fx doesn't support emulated iommu");
-    }
-}
-
 PCIBus *i440fx_init(const char *pci_type,
                     DeviceState *dev,
                     MemoryRegion *address_space_mem,