diff options
author | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2022-05-04 10:25:20 +0100 |
---|---|---|
committer | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2022-05-08 18:52:36 +0100 |
commit | 079e7ad989e3902ac7ecb70086d3b380faeeaf63 (patch) | |
tree | 48c0099576599ad0a078b4d103872869a365b03e /hw/hppa/dino.c | |
parent | ee313d5abb1f911c426f8fbcb3abb4b1d8e281ce (diff) | |
download | qemu-079e7ad989e3902ac7ecb70086d3b380faeeaf63.zip qemu-079e7ad989e3902ac7ecb70086d3b380faeeaf63.tar.gz qemu-079e7ad989e3902ac7ecb70086d3b380faeeaf63.tar.bz2 |
dino: return PCIBus from dino_init() using qdev_get_child_bus()
This allows access to the PCI bus without having to reference parent_obj directly.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Acked-by: Helge Deller <deller@gmx.de>
Message-Id: <20220504092600.10048-11-mark.cave-ayland@ilande.co.uk>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Diffstat (limited to 'hw/hppa/dino.c')
-rw-r--r-- | hw/hppa/dino.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index 77b8089..d89b484 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -523,14 +523,12 @@ PCIBus *dino_init(MemoryRegion *addr_space, { DeviceState *dev; DinoState *s; - PCIBus *b; + PCIBus *pci_bus; dev = qdev_new(TYPE_DINO_PCI_HOST_BRIDGE); object_property_set_link(OBJECT(dev), "memory-as", OBJECT(addr_space), &error_fatal); s = DINO_PCI_HOST_BRIDGE(dev); - - b = s->parent_obj.bus; sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); memory_region_add_subregion(addr_space, DINO_HPA, @@ -539,7 +537,8 @@ PCIBus *dino_init(MemoryRegion *addr_space, *p_rtc_irq = qemu_allocate_irq(dino_set_timer_irq, s, 0); *p_ser_irq = qemu_allocate_irq(dino_set_serial_irq, s, 0); - return b; + pci_bus = PCI_BUS(qdev_get_child_bus(dev, "pci")); + return pci_bus; } static void dino_pcihost_reset(DeviceState *dev) |