dev->nirqs++;
}
-static void isa_qdev_init(DeviceState *qdev, DeviceInfo *base)
+static int isa_qdev_init(DeviceState *qdev, DeviceInfo *base)
{
ISADevice *dev = DO_UPCAST(ISADevice, qdev, qdev);
ISADeviceInfo *info = DO_UPCAST(ISADeviceInfo, qdev, base);
dev->isairq[0] = -1;
dev->isairq[1] = -1;
- info->init(dev);
+
+ return info->init(dev);
}
void isa_qdev_register(ISADeviceInfo *info)
isa->iobase[0] = iobase;
isa->iobase[1] = iobase2;
qdev_init(dev);
- if (-1 != irq)
+ if (irq != -1) {
isa_connect_irq(isa, 0, irq);
- if (-1 != irq2)
+ }
+ if (irq2 != -1) {
isa_connect_irq(isa, 1, irq2);
+ }
return isa;
}
}
}
-static void isabus_bridge_init(SysBusDevice *dev)
+static int isabus_bridge_init(SysBusDevice *dev)
{
/* nothing */
+ return 0;
}
static SysBusDeviceInfo isabus_bridge_info = {