diff --cc hw/intc/openpic.c index b9e025f,d324b1e..0000000 --- a/hw/intc/openpic.c +++ b/hw/intc/openpic.c @@@ -1527,17 -1526,9 +1527,17 @@@ static void map_list(OpenPICState *opp } } -static int openpic_init(SysBusDevice *dev) +static void openpic_init(Object *obj) { - OpenPICState *opp = FROM_SYSBUS(typeof (*opp), dev); + OpenPICState *opp = OPENPIC(obj); + - memory_region_init(&opp->mem, NULL, "openpic", 0x40000); ++ memory_region_init(&opp->mem, obj, "openpic", 0x40000); +} + +static void openpic_realize(DeviceState *dev, Error **errp) +{ + SysBusDevice *d = SYS_BUS_DEVICE(dev); + OpenPICState *opp = OPENPIC(dev); int i, j; int list_count = 0; static const MemReg list_le[] = { diff --git a/hw/intc/openpic_kvm.c b/hw/intc/openpic_kvm.c index 6775879..2f73193 100644 --- a/hw/intc/openpic_kvm.c +++ b/hw/intc/openpic_kvm.c @@ -155,7 +155,7 @@ static void kvm_openpic_init(Object *obj) { KVMOpenPICState *opp = KVM_OPENPIC(obj); - memory_region_init_io(&opp->mem, &kvm_openpic_mem_ops, opp, + memory_region_init_io(&opp->mem, obj, &kvm_openpic_mem_ops, opp, "kvm-openpic", 0x40000); }