diff options
Diffstat (limited to 'hw/sun4c_intctl.c')
-rw-r--r-- | hw/sun4c_intctl.c | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/hw/sun4c_intctl.c b/hw/sun4c_intctl.c index e15b1674ce..081d6cc8bd 100644 --- a/hw/sun4c_intctl.c +++ b/hw/sun4c_intctl.c @@ -206,17 +206,26 @@ static int sun4c_intctl_init1(SysBusDevice *dev) return 0; } -static SysBusDeviceInfo sun4c_intctl_info = { - .init = sun4c_intctl_init1, - .qdev.name = "sun4c_intctl", - .qdev.size = sizeof(Sun4c_INTCTLState), - .qdev.vmsd = &vmstate_sun4c_intctl, - .qdev.reset = sun4c_intctl_reset, +static void sun4c_intctl_class_init(ObjectClass *klass, void *data) +{ + DeviceClass *dc = DEVICE_CLASS(klass); + SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + + k->init = sun4c_intctl_init1; + dc->reset = sun4c_intctl_reset; + dc->vmsd = &vmstate_sun4c_intctl; +} + +static TypeInfo sun4c_intctl_info = { + .name = "sun4c_intctl", + .parent = TYPE_SYS_BUS_DEVICE, + .instance_size = sizeof(Sun4c_INTCTLState), + .class_init = sun4c_intctl_class_init, }; static void sun4c_intctl_register_devices(void) { - sysbus_register_withprop(&sun4c_intctl_info); + type_register_static(&sun4c_intctl_info); } device_init(sun4c_intctl_register_devices) |