Drop the old SysBus init function and use instance_init
Signed-off-by: xiaoqiang zhao
---
hw/audio/milkymist-ac97.c | 13 +
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/hw/audio/milkymist-ac97.c b/hw/audio/milkymist-ac97.c
index 6a3b536..ac78e00 100644
--- a/hw/audio/milkymist-ac97.c
+++ b/hw/audio/milkymist-ac97.c
@@ -284,10 +284,10 @@ static int ac97_post_load(void *opaque, int version_id)
return 0;
}
-static int milkymist_ac97_init(SysBusDevice *dev)
+static void milkymist_ac97_init(Object *obj)
{
-MilkymistAC97State *s = MILKYMIST_AC97(dev);
-
+MilkymistAC97State *s = MILKYMIST_AC97(obj);
+SysBusDevice *dev = SYS_BUS_DEVICE(obj);
struct audsettings as;
sysbus_init_irq(dev, >crrequest_irq);
sysbus_init_irq(dev, >crreply_irq);
@@ -306,11 +306,9 @@ static int milkymist_ac97_init(SysBusDevice *dev)
s->voice_out = AUD_open_out(>card, s->voice_out,
"mm_ac97.out", s, ac97_out_cb, );
-memory_region_init_io(>regs_region, OBJECT(s), _mmio_ops, s,
+memory_region_init_io(>regs_region, obj, _mmio_ops, s,
"milkymist-ac97", R_MAX * 4);
sysbus_init_mmio(dev, >regs_region);
-
-return 0;
}
static const VMStateDescription vmstate_milkymist_ac97 = {
@@ -327,9 +325,7 @@ static const VMStateDescription vmstate_milkymist_ac97 = {
static void milkymist_ac97_class_init(ObjectClass *klass, void *data)
{
DeviceClass *dc = DEVICE_CLASS(klass);
-SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
-k->init = milkymist_ac97_init;
dc->reset = milkymist_ac97_reset;
dc->vmsd = _milkymist_ac97;
}
@@ -338,6 +334,7 @@ static const TypeInfo milkymist_ac97_info = {
.name = TYPE_MILKYMIST_AC97,
.parent= TYPE_SYS_BUS_DEVICE,
.instance_size = sizeof(MilkymistAC97State),
+.instance_init = milkymist_ac97_init,
.class_init= milkymist_ac97_class_init,
};
--
2.1.4