On Thu, Mar 16, 2017 at 03:35:07PM +0100, Cédric Le Goater wrote: > It will be used by derived classes in PowerNV for customization. > > Signed-off-by: Cédric Le Goater Reviewed-by: David Gibson > --- > hw/intc/xics.c | 5 +++++ > include/hw/ppc/xics.h | 1 + > 2 files changed, 6 insertions(+) > > diff --git a/hw/intc/xics.c b/hw/intc/xics.c > index 5cde86ceb3bc..7cd842102265 100644 > --- a/hw/intc/xics.c > +++ b/hw/intc/xics.c > @@ -348,6 +348,7 @@ static void icp_reset(void *dev) > static void icp_realize(DeviceState *dev, Error **errp) > { > ICPState *icp = ICP(dev); > + ICPStateClass *icpc = ICP_GET_CLASS(dev); > Object *obj; > Error *err = NULL; > > @@ -360,6 +361,10 @@ static void icp_realize(DeviceState *dev, Error **errp) > > icp->xics = XICS_FABRIC(obj); > > + if (icpc->realize) { > + icpc->realize(dev, errp); > + } > + > qemu_register_reset(icp_reset, dev); > } > > diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h > index 9a5e715fe553..0863e3a079f5 100644 > --- a/include/hw/ppc/xics.h > +++ b/include/hw/ppc/xics.h > @@ -60,6 +60,7 @@ typedef struct XICSFabric XICSFabric; > struct ICPStateClass { > DeviceClass parent_class; > > + void (*realize)(DeviceState *dev, Error **errp); > void (*pre_save)(ICPState *s); > int (*post_load)(ICPState *s, int version_id); > void (*cpu_setup)(ICPState *icp, PowerPCCPU *cpu); -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson