[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PULL 09/30] macio: embed DBDMA device directly within macio
From: |
David Gibson |
Subject: |
[Qemu-ppc] [PULL 09/30] macio: embed DBDMA device directly within macio |
Date: |
Tue, 6 Mar 2018 15:01:33 +1100 |
From: Mark Cave-Ayland <address@hidden>
The current recommendation is to embed subdevices directly within their
container
device, so do this for the DBDMA device.
Signed-off-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: David Gibson <address@hidden>
---
hw/misc/macio/macio.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
index 024f8557ab..7174135c8b 100644
--- a/hw/misc/macio/macio.c
+++ b/hw/misc/macio/macio.c
@@ -42,7 +42,7 @@ typedef struct MacIOState
MemoryRegion bar;
CUDAState cuda;
- DBDMAState *dbdma;
+ DBDMAState dbdma;
MemoryRegion *pic_mem;
MemoryRegion *escc_mem;
uint64_t frequency;
@@ -129,12 +129,12 @@ static void macio_common_realize(PCIDevice *d, Error
**errp)
SysBusDevice *sysbus_dev;
Error *err = NULL;
- object_property_set_bool(OBJECT(s->dbdma), true, "realized", &err);
+ object_property_set_bool(OBJECT(&s->dbdma), true, "realized", &err);
if (err) {
error_propagate(errp, err);
return;
}
- sysbus_dev = SYS_BUS_DEVICE(s->dbdma);
+ sysbus_dev = SYS_BUS_DEVICE(&s->dbdma);
memory_region_add_subregion(&s->bar, 0x08000,
sysbus_mmio_get_region(sysbus_dev, 0));
@@ -161,7 +161,7 @@ static void macio_realize_ide(MacIOState *s, MACIOIDEState
*ide,
sysbus_connect_irq(sysbus_dev, 0, irq0);
sysbus_connect_irq(sysbus_dev, 1, irq1);
qdev_prop_set_uint32(DEVICE(ide), "channel", dmaid);
- object_property_set_link(OBJECT(ide), OBJECT(s->dbdma), "dbdma", errp);
+ object_property_set_link(OBJECT(ide), OBJECT(&s->dbdma), "dbdma", errp);
macio_ide_register_dma(ide);
object_property_set_bool(OBJECT(ide), true, "realized", errp);
@@ -344,8 +344,9 @@ static void macio_instance_init(Object *obj)
qdev_set_parent_bus(DEVICE(&s->cuda), sysbus_get_default());
object_property_add_child(obj, "cuda", OBJECT(&s->cuda), NULL);
- s->dbdma = MAC_DBDMA(object_new(TYPE_MAC_DBDMA));
- object_property_add_child(obj, "dbdma", OBJECT(s->dbdma), NULL);
+ object_initialize(&s->dbdma, sizeof(s->dbdma), TYPE_MAC_DBDMA);
+ qdev_set_parent_bus(DEVICE(&s->dbdma), sysbus_get_default());
+ object_property_add_child(obj, "dbdma", OBJECT(&s->dbdma), NULL);
}
static const VMStateDescription vmstate_macio_oldworld = {
--
2.14.3
- [Qemu-ppc] [PULL 00/30] ppc-for-2.12 queue 20180306, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 01/30] spapr: fix missing CPU core nodes in DT when running with TCG, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 02/30] ppc440_uc: Fix unintialized variable warning with older gcc, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 09/30] macio: embed DBDMA device directly within macio,
David Gibson <=
- [Qemu-ppc] [PULL 07/30] spapr: register dummy ICPs later, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 15/30] mac_oldworld: use object link to pass heathrow PIC object to macio, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 03/30] ppc440: Add emulation of plb-pcix controller found in some 440 SoCs, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 08/30] spapr: harden code that depends on VSMT, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 04/30] roms: Added git submodule for u-boot-sam460 (firmware for sam460ex), David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 12/30] heathrow: convert to trace-events, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 18/30] mac_newworld: use object link to pass OpenPIC object to macio, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 16/30] openpic: move KVM-specific declarations into separate openpic_kvm.h file, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 13/30] heathrow: change heathrow_pic_init() to return the heathrow device, David Gibson, 2018/03/05
- [Qemu-ppc] [PULL 10/30] macio: move ESCC device within the macio device, David Gibson, 2018/03/05