diff options
Diffstat (limited to 'hw')
-rw-r--r-- | hw/display/vga-isa.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/hw/display/vga-isa.c b/hw/display/vga-isa.c index 2b3cc9b..9e63b69 100644 --- a/hw/display/vga-isa.c +++ b/hw/display/vga-isa.c @@ -31,14 +31,18 @@ #include "qemu/timer.h" #include "hw/loader.h" +#define TYPE_ISA_VGA "isa-vga" +#define ISA_VGA(obj) OBJECT_CHECK(ISAVGAState, (obj), TYPE_ISA_VGA) + typedef struct ISAVGAState { - ISADevice dev; + ISADevice parent_obj; + struct VGACommonState state; } ISAVGAState; -static void vga_reset_isa(DeviceState *dev) +static void vga_isa_reset(DeviceState *dev) { - ISAVGAState *d = container_of(dev, ISAVGAState, dev.qdev); + ISAVGAState *d = ISA_VGA(dev); VGACommonState *s = &d->state; vga_common_reset(s); @@ -46,7 +50,7 @@ static void vga_reset_isa(DeviceState *dev) static int vga_initfn(ISADevice *dev) { - ISAVGAState *d = DO_UPCAST(ISAVGAState, dev, dev); + ISAVGAState *d = ISA_VGA(dev); VGACommonState *s = &d->state; MemoryRegion *vga_io_memory; const MemoryRegionPortio *vga_ports, *vbe_ports; @@ -75,26 +79,27 @@ static Property vga_isa_properties[] = { DEFINE_PROP_END_OF_LIST(), }; -static void vga_class_initfn(ObjectClass *klass, void *data) +static void vga_isa_class_initfn(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); ISADeviceClass *ic = ISA_DEVICE_CLASS(klass); + ic->init = vga_initfn; - dc->reset = vga_reset_isa; + dc->reset = vga_isa_reset; dc->vmsd = &vmstate_vga_common; dc->props = vga_isa_properties; } -static const TypeInfo vga_info = { - .name = "isa-vga", +static const TypeInfo vga_isa_info = { + .name = TYPE_ISA_VGA, .parent = TYPE_ISA_DEVICE, .instance_size = sizeof(ISAVGAState), - .class_init = vga_class_initfn, + .class_init = vga_isa_class_initfn, }; -static void vga_register_types(void) +static void vga_isa_register_types(void) { - type_register_static(&vga_info); + type_register_static(&vga_isa_info); } -type_init(vga_register_types) +type_init(vga_isa_register_types) |