From patchwork Mon Nov 26 00:12:38 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [RFC,26/34] vmport: QOM'ify Date: Sun, 25 Nov 2012 14:12:38 -0000 From: =?utf-8?q?Andreas_F=C3=A4rber_=3Cafaerber=40suse=2Ede=3E?= X-Patchwork-Id: 201622 Message-Id: <1353888766-6951-27-git-send-email-afaerber@suse.de> To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Andreas=20F=C3=A4rber?= , anthony@codemonkey.ws Introduce type constant and cast macro to obsolete DO_UPCAST(). Prepares for ISA realizefn. Drop reserved underscore from struct name while at it. Signed-off-by: Andreas Färber --- hw/vmport.c | 14 +++++++++----- 1 Datei geändert, 9 Zeilen hinzugefügt(+), 5 Zeilen entfernt(-) diff --git a/hw/vmport.c b/hw/vmport.c index 3ab3a14..ec36d47 100644 --- a/hw/vmport.c +++ b/hw/vmport.c @@ -35,9 +35,13 @@ #define VMPORT_ENTRIES 0x2c #define VMPORT_MAGIC 0x564D5868 -typedef struct _VMPortState +#define TYPE_VMPORT "vmport" +#define VMPORT(obj) OBJECT_CHECK(VMPortState, (obj), TYPE_VMPORT) + +typedef struct VMPortState { - ISADevice dev; + ISADevice parent_obj; + MemoryRegion io; IOPortReadFunc *func[VMPORT_ENTRIES]; void *opaque[VMPORT_ENTRIES]; @@ -135,7 +139,7 @@ static const MemoryRegionOps vmport_ops = { static int vmport_initfn(ISADevice *dev) { - VMPortState *s = DO_UPCAST(VMPortState, dev, dev); + VMPortState *s = VMPORT(dev); memory_region_init_io(&s->io, &vmport_ops, s, "vmport", 1); isa_register_ioport(dev, &s->io, 0x5658); @@ -155,8 +159,8 @@ static void vmport_class_initfn(ObjectClass *klass, void *data) dc->no_user = 1; } -static TypeInfo vmport_info = { - .name = "vmport", +static const TypeInfo vmport_info = { + .name = TYPE_VMPORT, .parent = TYPE_ISA_DEVICE, .instance_size = sizeof(VMPortState), .class_init = vmport_class_initfn,