Commit a72dc5fc authored by Andreas Färber's avatar Andreas Färber Committed by Anthony Liguori
Browse files

vga-isa: QOM'ify ISA VGA



Introduce type constant and cast macro to obsolete DO_UPCAST() and
container_of(). Prepares for ISA realizefn.

Unify function naming scheme while at it.

Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
Message-id: 1367093935-29091-18-git-send-email-afaerber@suse.de
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent b582b5a3
Loading
Loading
Loading
Loading
+17 −12
Original line number Diff line number Diff line
@@ -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)