From: Helge Deller <[email protected]> All 64-bit hppa machines have at least 4 Elroy PCI busses in the system. Make sure to use proper names in the qemu device tree, e.g. "elroy0" or "elroy2-pci-mmio", to be able to distinguish between the various chips.
Signed-off-by: Helge Deller <[email protected]> Reviewed-by: Philippe Mathieu-Daudé <[email protected]> --- hw/pci-host/astro.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/pci-host/astro.c b/hw/pci-host/astro.c index 626aa9ce22..6cc0b35070 100644 --- a/hw/pci-host/astro.c +++ b/hw/pci-host/astro.c @@ -430,10 +430,11 @@ static void elroy_pcihost_realize(DeviceState *dev, Error **errp) PCIHostState *phb = PCI_HOST_BRIDGE(dev); SysBusDevice *sbd = SYS_BUS_DEVICE(dev); Object *obj = OBJECT(s); + g_autofree char *elroy_mmio_name = NULL; /* Elroy config access from CPU. */ memory_region_init_io(&s->this_mem, obj, &elroy_chip_ops, - s, "elroy", 0x2000); + s, dev->id, 0x2000); /* Elroy PCI config. */ memory_region_init_io(&phb->conf_mem, obj, @@ -448,7 +449,8 @@ static void elroy_pcihost_realize(DeviceState *dev, Error **errp) &phb->data_mem); /* Elroy PCI bus memory. */ - memory_region_init(&s->pci_mmio, obj, "pci-mmio", UINT64_MAX); + elroy_mmio_name = g_strdup_printf("%s-pci-mmio", dev->id); + memory_region_init(&s->pci_mmio, obj, elroy_mmio_name, UINT64_MAX); memory_region_init_io(&s->pci_io, obj, &unassigned_io_ops, obj, "pci-isa-mmio", ((uint32_t) IOS_DIST_BASE_SIZE) / ROPES_PER_IOC); -- 2.53.0
