[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 060/173] versatilepb: QOM cast cleanup for vpb_sic_st
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PULL 060/173] versatilepb: QOM cast cleanup for vpb_sic_state |
Date: |
Mon, 29 Jul 2013 21:18:37 +0200 |
Introduce a type constant, use QOM casts, rename the parent field and
prepare for QOM realize.
Signed-off-by: Andreas Färber <address@hidden>
---
hw/arm/versatilepb.c | 37 +++++++++++++++++++++----------------
1 file changed, 21 insertions(+), 16 deletions(-)
diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c
index 725f60f..b48d84c 100644
--- a/hw/arm/versatilepb.c
+++ b/hw/arm/versatilepb.c
@@ -25,15 +25,19 @@
/* Primary interrupt controller. */
-typedef struct vpb_sic_state
-{
- SysBusDevice busdev;
- MemoryRegion iomem;
- uint32_t level;
- uint32_t mask;
- uint32_t pic_enable;
- qemu_irq parent[32];
- int irq;
+#define TYPE_VERSATILE_PB_SIC "versatilepb_sic"
+#define VERSATILE_PB_SIC(obj) \
+ OBJECT_CHECK(vpb_sic_state, (obj), TYPE_VERSATILE_PB_SIC)
+
+typedef struct vpb_sic_state {
+ SysBusDevice parent_obj;
+
+ MemoryRegion iomem;
+ uint32_t level;
+ uint32_t mask;
+ uint32_t pic_enable;
+ qemu_irq parent[32];
+ int irq;
} vpb_sic_state;
static const VMStateDescription vmstate_vpb_sic = {
@@ -144,19 +148,20 @@ static const MemoryRegionOps vpb_sic_ops = {
.endianness = DEVICE_NATIVE_ENDIAN,
};
-static int vpb_sic_init(SysBusDevice *dev)
+static int vpb_sic_init(SysBusDevice *sbd)
{
- vpb_sic_state *s = FROM_SYSBUS(vpb_sic_state, dev);
+ DeviceState *dev = DEVICE(sbd);
+ vpb_sic_state *s = VERSATILE_PB_SIC(dev);
int i;
- qdev_init_gpio_in(&dev->qdev, vpb_sic_set_irq, 32);
+ qdev_init_gpio_in(dev, vpb_sic_set_irq, 32);
for (i = 0; i < 32; i++) {
- sysbus_init_irq(dev, &s->parent[i]);
+ sysbus_init_irq(sbd, &s->parent[i]);
}
s->irq = 31;
memory_region_init_io(&s->iomem, OBJECT(s), &vpb_sic_ops, s,
"vpb-sic", 0x1000);
- sysbus_init_mmio(dev, &s->iomem);
+ sysbus_init_mmio(sbd, &s->iomem);
return 0;
}
@@ -213,7 +218,7 @@ static void versatile_init(QEMUMachineInitArgs *args, int
board_id)
for (n = 0; n < 32; n++) {
pic[n] = qdev_get_gpio_in(dev, n);
}
- dev = sysbus_create_simple("versatilepb_sic", 0x10003000, NULL);
+ dev = sysbus_create_simple(TYPE_VERSATILE_PB_SIC, 0x10003000, NULL);
for (n = 0; n < 32; n++) {
sysbus_connect_irq(SYS_BUS_DEVICE(dev), n, pic[n]);
sic[n] = qdev_get_gpio_in(dev, n);
@@ -393,7 +398,7 @@ static void vpb_sic_class_init(ObjectClass *klass, void
*data)
}
static const TypeInfo vpb_sic_info = {
- .name = "versatilepb_sic",
+ .name = TYPE_VERSATILE_PB_SIC,
.parent = TYPE_SYS_BUS_DEVICE,
.instance_size = sizeof(vpb_sic_state),
.class_init = vpb_sic_class_init,
--
1.8.1.4
- [Qemu-devel] [PULL 049/173] spitz: QOM cast cleanup for SLNANDState, (continued)
- [Qemu-devel] [PULL 049/173] spitz: QOM cast cleanup for SLNANDState, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 051/173] stellaris: QOM cast cleanup for gptm_state, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 052/173] stellaris: QOM cast cleanup for stellaris_i2c_state, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 053/173] stellaris: QOM cast cleanup for stellaris_adc_state, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 054/173] strongarm: QOM cast cleanup for StrongARMPICState, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 055/173] strongarm: QOM cast cleanup for StrongARMRTCState, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 056/173] strongarm: QOM cast cleanup for StrongARMGPIOInfo, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 057/173] strongarm: QOM cast cleanup for StrongARMPPCInfo, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 058/173] strongarm: QOM cast cleanup for StrongARMUARTState, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 059/173] strongarm: QOM cast cleanup for StrongARMSSPState, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 060/173] versatilepb: QOM cast cleanup for vpb_sic_state,
Andreas Färber <=
- [Qemu-devel] [PULL 061/173] cadence_uart: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 066/173] lm32_juart: Relocate and tidy header, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 062/173] escc: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 063/173] exynos4210_uart: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 064/173] grlib_apbuart: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 065/173] imx_serial: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 067/173] lm32_juart: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 068/173] lm32_uart: QOM cast cleanup, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 070/173] pl011: Rename pl011_state, Andreas Färber, 2013/07/29
- [Qemu-devel] [PULL 069/173] milkymist-uart: QOM cast cleanup, Andreas Färber, 2013/07/29