vmport: QOM'ify
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 <afaerber@suse.de> Signed-off-by: Andreas Färber <afaerber@suse.de> Message-id: 1367093935-29091-20-git-send-email-afaerber@suse.de Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
e3b7fbead8
commit
f02317ad4e
@ -35,9 +35,13 @@
|
|||||||
#define VMPORT_ENTRIES 0x2c
|
#define VMPORT_ENTRIES 0x2c
|
||||||
#define VMPORT_MAGIC 0x564D5868
|
#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;
|
MemoryRegion io;
|
||||||
IOPortReadFunc *func[VMPORT_ENTRIES];
|
IOPortReadFunc *func[VMPORT_ENTRIES];
|
||||||
void *opaque[VMPORT_ENTRIES];
|
void *opaque[VMPORT_ENTRIES];
|
||||||
@ -135,7 +139,7 @@ static const MemoryRegionOps vmport_ops = {
|
|||||||
|
|
||||||
static int vmport_initfn(ISADevice *dev)
|
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);
|
memory_region_init_io(&s->io, &vmport_ops, s, "vmport", 1);
|
||||||
isa_register_ioport(dev, &s->io, 0x5658);
|
isa_register_ioport(dev, &s->io, 0x5658);
|
||||||
@ -156,7 +160,7 @@ static void vmport_class_initfn(ObjectClass *klass, void *data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static const TypeInfo vmport_info = {
|
static const TypeInfo vmport_info = {
|
||||||
.name = "vmport",
|
.name = TYPE_VMPORT,
|
||||||
.parent = TYPE_ISA_DEVICE,
|
.parent = TYPE_ISA_DEVICE,
|
||||||
.instance_size = sizeof(VMPortState),
|
.instance_size = sizeof(VMPortState),
|
||||||
.class_init = vmport_class_initfn,
|
.class_init = vmport_class_initfn,
|
||||||
|
Loading…
Reference in New Issue
Block a user