On 9/20/20 10:20 AM, Mark Cave-Ayland wrote: > The device should not map itself but instead should be mapped to sysbus by the > sun4u machine.
Yeah good cleanup. Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org> > > Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> > --- > hw/pci-host/sabre.c | 8 -------- > hw/sparc64/sun4u.c | 7 +++++++ > 2 files changed, 7 insertions(+), 8 deletions(-) > > diff --git a/hw/pci-host/sabre.c b/hw/pci-host/sabre.c > index 5ac6283623..5394ad5cd0 100644 > --- a/hw/pci-host/sabre.c > +++ b/hw/pci-host/sabre.c > @@ -378,16 +378,8 @@ static void sabre_realize(DeviceState *dev, Error **errp) > { > SabreState *s = SABRE(dev); > PCIHostState *phb = PCI_HOST_BRIDGE(dev); > - SysBusDevice *sbd = SYS_BUS_DEVICE(s); > PCIDevice *pci_dev; > > - /* sabre_config */ > - sysbus_mmio_map(sbd, 0, s->special_base); > - /* PCI configuration space */ > - sysbus_mmio_map(sbd, 1, s->special_base + 0x1000000ULL); > - /* pci_ioport */ > - sysbus_mmio_map(sbd, 2, s->special_base + 0x2000000ULL); > - > memory_region_init(&s->pci_mmio, OBJECT(s), "pci-mmio", 0x100000000ULL); > memory_region_add_subregion(get_system_memory(), s->mem_base, > &s->pci_mmio); > diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c > index b4aabfc076..f80ddde5dc 100644 > --- a/hw/sparc64/sun4u.c > +++ b/hw/sparc64/sun4u.c > @@ -592,6 +592,13 @@ static void sun4uv_init(MemoryRegion *address_space_mem, > &error_abort); > sysbus_realize_and_unref(SYS_BUS_DEVICE(sabre), &error_fatal); > > + /* sabre_config */ > + sysbus_mmio_map(SYS_BUS_DEVICE(sabre), 0, PBM_SPECIAL_BASE); > + /* PCI configuration space */ > + sysbus_mmio_map(SYS_BUS_DEVICE(sabre), 1, PBM_SPECIAL_BASE + > 0x1000000ULL); > + /* pci_ioport */ > + sysbus_mmio_map(SYS_BUS_DEVICE(sabre), 2, PBM_SPECIAL_BASE + > 0x2000000ULL); > + > /* Wire up PCI interrupts to CPU */ > for (i = 0; i < IVEC_MAX; i++) { > qdev_connect_gpio_out_named(DEVICE(sabre), "ivec-irq", i, >