[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 05/16] misc/a9scu: QOM cleanups
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PATCH v2 05/16] misc/a9scu: QOM cleanups |
Date: |
Tue, 23 Jul 2013 04:43:13 +0200 |
From: Andreas Färber <address@hidden>
Rename A9SCUState::busdev field to parent_obj and turn realizefn into an
instance_init function to allow early MMIO mapping.
Reviewed-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>
---
hw/misc/a9scu.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/hw/misc/a9scu.c b/hw/misc/a9scu.c
index 601b573..2661014 100644
--- a/hw/misc/a9scu.c
+++ b/hw/misc/a9scu.c
@@ -13,7 +13,10 @@
/* A9MP private memory region. */
typedef struct A9SCUState {
- SysBusDevice busdev;
+ /*< private >*/
+ SysBusDevice parent_obj;
+ /*< public >*/
+
MemoryRegion iomem;
uint32_t control;
uint32_t status;
@@ -114,12 +117,12 @@ static void a9_scu_reset(DeviceState *dev)
s->control = 0;
}
-static void a9_scu_realize(DeviceState *dev, Error ** errp)
+static void a9_scu_init(Object *obj)
{
- A9SCUState *s = A9_SCU(dev);
- SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
+ A9SCUState *s = A9_SCU(obj);
+ SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
- memory_region_init_io(&s->iomem, OBJECT(dev), &a9_scu_ops, s,
+ memory_region_init_io(&s->iomem, obj, &a9_scu_ops, s,
"a9-scu", 0x100);
sysbus_init_mmio(sbd, &s->iomem);
}
@@ -144,7 +147,6 @@ static void a9_scu_class_init(ObjectClass *klass, void
*data)
{
DeviceClass *dc = DEVICE_CLASS(klass);
- dc->realize = a9_scu_realize;
dc->props = a9_scu_properties;
dc->vmsd = &vmstate_a9_scu;
dc->reset = a9_scu_reset;
@@ -154,6 +156,7 @@ static const TypeInfo a9_scu_info = {
.name = TYPE_A9_SCU,
.parent = TYPE_SYS_BUS_DEVICE,
.instance_size = sizeof(A9SCUState),
+ .instance_init = a9_scu_init,
.class_init = a9_scu_class_init,
};
--
1.8.1.4
- [Qemu-devel] [PATCH v2 00/16] arm: A9MPCore+A15MPCore QOM'ification, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 02/16] cpu/a9mpcore: Split off instance_init, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 01/16] cpu/a9mpcore: QOM casting cleanup, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 04/16] cpu/a9mpcore: Embed GICState, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 08/16] timer/arm_mptimer: Convert to QOM realize, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 05/16] misc/a9scu: QOM cleanups,
Andreas Färber <=
- [Qemu-devel] [PATCH v2 07/16] timer/arm_mptimer: QOM cast cleanup, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 06/16] cpu/a9mpcore: Embed A9SCUState, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 03/16] intc/arm_gic: Extract public header hw/intc/arm_gic.h, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 11/16] cpu/a9mpcore: Prepare for QOM embedding, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 10/16] cpu/a9mpcore: Convert to QOM realize, Andreas Färber, 2013/07/22
- [Qemu-devel] [PATCH v2 12/16] cpu/a15mpcore: QOM cast cleanup, Andreas Färber, 2013/07/22