Use DeviceClass rather than SysBusDeviceClass in tusb6010_class_init(). Cc: kra...@redhat.com
Signed-off-by: Mao Zhongyi <maozhon...@cmss.chinamobile.com> Signed-off-by: Zhang Shengju <zhangshen...@cmss.chinamobile.com> --- hw/usb/tusb6010.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/hw/usb/tusb6010.c b/hw/usb/tusb6010.c index a2128024c1..0712281c42 100644 --- a/hw/usb/tusb6010.c +++ b/hw/usb/tusb6010.c @@ -808,29 +808,26 @@ static void tusb6010_reset(DeviceState *dev) musb_reset(s->musb); } -static int tusb6010_init(SysBusDevice *sbd) +static void tusb6010_realize(DeviceState *dev, Error **errp) { - DeviceState *dev = DEVICE(sbd); TUSBState *s = TUSB(dev); s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s); s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s); memory_region_init_io(&s->iomem[1], OBJECT(s), &tusb_async_ops, s, "tusb-async", UINT32_MAX); - sysbus_init_mmio(sbd, &s->iomem[0]); - sysbus_init_mmio(sbd, &s->iomem[1]); - sysbus_init_irq(sbd, &s->irq); + sysbus_init_mmio(SYS_BUS_DEVICE(dev), &s->iomem[0]); + sysbus_init_mmio(SYS_BUS_DEVICE(dev), &s->iomem[1]); + sysbus_init_irq(SYS_BUS_DEVICE(dev), &s->irq); qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1); s->musb = musb_init(dev, 1); - return 0; } static void tusb6010_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); - SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); - k->init = tusb6010_init; + dc->realize = tusb6010_realize; dc->reset = tusb6010_reset; } -- 2.17.1