|
@@ -808,10 +808,10 @@ static void tusb6010_reset(DeviceState *dev)
|
|
musb_reset(s->musb);
|
|
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);
|
|
TUSBState *s = TUSB(dev);
|
|
|
|
+ SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
|
|
|
|
|
|
s->otg_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_otg_tick, s);
|
|
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);
|
|
s->pwr_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, tusb_power_tick, s);
|
|
@@ -822,15 +822,13 @@ static int tusb6010_init(SysBusDevice *sbd)
|
|
sysbus_init_irq(sbd, &s->irq);
|
|
sysbus_init_irq(sbd, &s->irq);
|
|
qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
|
|
qdev_init_gpio_in(dev, tusb6010_irq, musb_irq_max + 1);
|
|
s->musb = musb_init(dev, 1);
|
|
s->musb = musb_init(dev, 1);
|
|
- return 0;
|
|
|
|
}
|
|
}
|
|
|
|
|
|
static void tusb6010_class_init(ObjectClass *klass, void *data)
|
|
static void tusb6010_class_init(ObjectClass *klass, void *data)
|
|
{
|
|
{
|
|
DeviceClass *dc = DEVICE_CLASS(klass);
|
|
DeviceClass *dc = DEVICE_CLASS(klass);
|
|
- SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
|
|
|
|
|
|
|
|
- k->init = tusb6010_init;
|
|
|
|
|
|
+ dc->realize = tusb6010_realize;
|
|
dc->reset = tusb6010_reset;
|
|
dc->reset = tusb6010_reset;
|
|
}
|
|
}
|
|
|
|
|