isa: Split off instance_init for ISADevice

Prepares for assigning IRQs before QOM realize.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Message-id: 1361010446-1427-1-git-send-email-afaerber@suse.de
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Andreas Färber 2013-02-16 11:27:26 +01:00 committed by Anthony Liguori
parent 872536bf5d
commit c538ca66ff
1 changed files with 9 additions and 3 deletions

View File

@ -124,9 +124,6 @@ static int isa_qdev_init(DeviceState *qdev)
ISADevice *dev = ISA_DEVICE(qdev); ISADevice *dev = ISA_DEVICE(qdev);
ISADeviceClass *klass = ISA_DEVICE_GET_CLASS(dev); ISADeviceClass *klass = ISA_DEVICE_GET_CLASS(dev);
dev->isairq[0] = -1;
dev->isairq[1] = -1;
if (klass->init) { if (klass->init) {
return klass->init(dev); return klass->init(dev);
} }
@ -134,6 +131,14 @@ static int isa_qdev_init(DeviceState *qdev)
return 0; return 0;
} }
static void isa_device_init(Object *obj)
{
ISADevice *dev = ISA_DEVICE(obj);
dev->isairq[0] = -1;
dev->isairq[1] = -1;
}
ISADevice *isa_create(ISABus *bus, const char *name) ISADevice *isa_create(ISABus *bus, const char *name)
{ {
DeviceState *dev; DeviceState *dev;
@ -233,6 +238,7 @@ static const TypeInfo isa_device_type_info = {
.name = TYPE_ISA_DEVICE, .name = TYPE_ISA_DEVICE,
.parent = TYPE_DEVICE, .parent = TYPE_DEVICE,
.instance_size = sizeof(ISADevice), .instance_size = sizeof(ISADevice),
.instance_init = isa_device_init,
.abstract = true, .abstract = true,
.class_size = sizeof(ISADeviceClass), .class_size = sizeof(ISADeviceClass),
.class_init = isa_device_class_init, .class_init = isa_device_class_init,