SysBusDevice::mmio[] is kind of internal. Use the proper sysbus_mmio_get_region() accessor.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]> --- hw/pci-bridge/pci_expander_bridge.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/pci-bridge/pci_expander_bridge.c b/hw/pci-bridge/pci_expander_bridge.c index 1bcceddbc4d..b4e2c95ae4c 100644 --- a/hw/pci-bridge/pci_expander_bridge.c +++ b/hw/pci-bridge/pci_expander_bridge.c @@ -157,9 +157,9 @@ static char *pxb_host_ofw_unit_address(const SysBusDevice *dev) main_host = PCI_HOST_BRIDGE(pxb_dev_base->parent_bus->parent); main_host_sbd = SYS_BUS_DEVICE(main_host); - if (main_host_sbd->num_mmio > 0) { - return g_strdup_printf(HWADDR_FMT_plx ",%x", - main_host_sbd->mmio[0].addr, position + 1); + if (sysbus_has_mmio(main_host_sbd, 0)) { + MemoryRegion *mr = sysbus_mmio_get_region(main_host_sbd, 0); + return g_strdup_printf(HWADDR_FMT_plx ",%x", mr->addr, position + 1); } if (main_host_sbd->num_pio > 0) { return g_strdup_printf("i%04x,%x", -- 2.51.0
