From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56112) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V3t0W-0002vQ-EJ for qemu-devel@nongnu.org; Mon, 29 Jul 2013 15:21:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V3t0Q-0002NP-Dx for qemu-devel@nongnu.org; Mon, 29 Jul 2013 15:21:24 -0400 Received: from cantor2.suse.de ([195.135.220.15]:53312 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V3t0Q-0002NJ-1Q for qemu-devel@nongnu.org; Mon, 29 Jul 2013 15:21:18 -0400 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Mon, 29 Jul 2013 21:18:21 +0200 Message-Id: <1375125630-24869-45-git-send-email-afaerber@suse.de> In-Reply-To: <1375125630-24869-1-git-send-email-afaerber@suse.de> References: <1375125630-24869-1-git-send-email-afaerber@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PULL 044/173] pxa2xx: QOM cast cleanup for PXA2xxSSPState List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Paul Brook Introduce a type constant, use QOM casts, rename the parent field and prepare for QOM realize. Signed-off-by: Andreas F=C3=A4rber --- hw/arm/pxa2xx.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/hw/arm/pxa2xx.c b/hw/arm/pxa2xx.c index 3c520d7..babe22e 100644 --- a/hw/arm/pxa2xx.c +++ b/hw/arm/pxa2xx.c @@ -457,9 +457,16 @@ static const VMStateDescription vmstate_pxa2xx_mm =3D= { } }; =20 +#define TYPE_PXA2XX_SSP "pxa2xx-ssp" +#define PXA2XX_SSP(obj) \ + OBJECT_CHECK(PXA2xxSSPState, (obj), TYPE_PXA2XX_SSP) + /* Synchronous Serial Ports */ typedef struct { - SysBusDevice busdev; + /*< private >*/ + SysBusDevice parent_obj; + /*< public >*/ + MemoryRegion iomem; qemu_irq irq; int enable; @@ -757,19 +764,20 @@ static int pxa2xx_ssp_load(QEMUFile *f, void *opaqu= e, int version_id) return 0; } =20 -static int pxa2xx_ssp_init(SysBusDevice *dev) +static int pxa2xx_ssp_init(SysBusDevice *sbd) { - PXA2xxSSPState *s =3D FROM_SYSBUS(PXA2xxSSPState, dev); + DeviceState *dev =3D DEVICE(sbd); + PXA2xxSSPState *s =3D PXA2XX_SSP(dev); =20 - sysbus_init_irq(dev, &s->irq); + sysbus_init_irq(sbd, &s->irq); =20 memory_region_init_io(&s->iomem, OBJECT(s), &pxa2xx_ssp_ops, s, "pxa2xx-ssp", 0x1000); - sysbus_init_mmio(dev, &s->iomem); - register_savevm(&dev->qdev, "pxa2xx_ssp", -1, 0, + sysbus_init_mmio(sbd, &s->iomem); + register_savevm(dev, "pxa2xx_ssp", -1, 0, pxa2xx_ssp_save, pxa2xx_ssp_load, s); =20 - s->bus =3D ssi_create_bus(&dev->qdev, "ssi"); + s->bus =3D ssi_create_bus(dev, "ssi"); return 0; } =20 @@ -2107,7 +2115,7 @@ PXA2xxState *pxa270_init(MemoryRegion *address_spac= e, s->ssp =3D (SSIBus **)g_malloc0(sizeof(SSIBus *) * i); for (i =3D 0; pxa27x_ssp[i].io_base; i ++) { DeviceState *dev; - dev =3D sysbus_create_simple("pxa2xx-ssp", pxa27x_ssp[i].io_base= , + dev =3D sysbus_create_simple(TYPE_PXA2XX_SSP, pxa27x_ssp[i].io_b= ase, qdev_get_gpio_in(s->pic, pxa27x_ssp[i].irqn)); s->ssp[i] =3D (SSIBus *)qdev_get_child_bus(dev, "ssi"); } @@ -2238,7 +2246,7 @@ PXA2xxState *pxa255_init(MemoryRegion *address_spac= e, unsigned int sdram_size) s->ssp =3D (SSIBus **)g_malloc0(sizeof(SSIBus *) * i); for (i =3D 0; pxa255_ssp[i].io_base; i ++) { DeviceState *dev; - dev =3D sysbus_create_simple("pxa2xx-ssp", pxa255_ssp[i].io_base= , + dev =3D sysbus_create_simple(TYPE_PXA2XX_SSP, pxa255_ssp[i].io_b= ase, qdev_get_gpio_in(s->pic, pxa255_ssp[i].irqn)); s->ssp[i] =3D (SSIBus *)qdev_get_child_bus(dev, "ssi"); } @@ -2278,7 +2286,7 @@ static void pxa2xx_ssp_class_init(ObjectClass *klas= s, void *data) } =20 static const TypeInfo pxa2xx_ssp_info =3D { - .name =3D "pxa2xx-ssp", + .name =3D TYPE_PXA2XX_SSP, .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(PXA2xxSSPState), .class_init =3D pxa2xx_ssp_class_init, --=20 1.8.1.4