On Tue, 22 Oct 2019 15:46:29 +0200 Cédric Le Goater <c...@kaod.org> wrote:
> We will use it to reset the interrupt presenter from the CPU reset > handler. > > Signed-off-by: Cédric Le Goater <c...@kaod.org> > --- Reviewed-by: Greg Kurz <gr...@kaod.org> > include/hw/ppc/pnv_core.h | 3 +++ > hw/ppc/pnv_core.c | 3 ++- > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/include/hw/ppc/pnv_core.h b/include/hw/ppc/pnv_core.h > index bfbd2ec42aa6..55eee95104da 100644 > --- a/include/hw/ppc/pnv_core.h > +++ b/include/hw/ppc/pnv_core.h > @@ -31,6 +31,8 @@ > #define PNV_CORE_GET_CLASS(obj) \ > OBJECT_GET_CLASS(PnvCoreClass, (obj), TYPE_PNV_CORE) > > +typedef struct PnvChip PnvChip; > + > typedef struct PnvCore { > /*< private >*/ > CPUCore parent_obj; > @@ -38,6 +40,7 @@ typedef struct PnvCore { > /*< public >*/ > PowerPCCPU **threads; > uint32_t pir; > + PnvChip *chip; > > MemoryRegion xscom_regs; > } PnvCore; > diff --git a/hw/ppc/pnv_core.c b/hw/ppc/pnv_core.c > index 9f981a4940e6..cc17bbfed829 100644 > --- a/hw/ppc/pnv_core.c > +++ b/hw/ppc/pnv_core.c > @@ -222,6 +222,7 @@ static void pnv_core_realize(DeviceState *dev, Error > **errp) > "required link 'chip' not found: "); > return; > } > + pc->chip = PNV_CHIP(chip); > > pc->threads = g_new(PowerPCCPU *, cc->nr_threads); > for (i = 0; i < cc->nr_threads; i++) { > @@ -243,7 +244,7 @@ static void pnv_core_realize(DeviceState *dev, Error > **errp) > } > > for (j = 0; j < cc->nr_threads; j++) { > - pnv_realize_vcpu(pc->threads[j], PNV_CHIP(chip), &local_err); > + pnv_realize_vcpu(pc->threads[j], pc->chip, &local_err); > if (local_err) { > goto err; > }