mirror of https://gitee.com/openkylin/qemu.git
ppc/pnv: Add a PnvChip pointer to PnvCore
We will use it to reset the interrupt presenter from the CPU reset handler. Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Greg Kurz <groug@kaod.org> Message-Id: <20191022163812.330-5-clg@kaod.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
fa06541b5d
commit
aa5ac64b23
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue