Message ID | 20230611103412.12109-10-shentey@gmail.com |
---|---|
State | New |
Headers | show |
Series | Q35 and I440FX host bridge QOM cleanup | expand |
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 --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,
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(-)