mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-23 19:49:43 +00:00
ppc/pnv: change the CPU machine_data presenter type to Object *
The POWER9 PowerNV machine will use a XIVE interrupt presenter type. Signed-off-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20190306085032.15744-6-clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
a58a18adee
commit
956b8f468d
@ -684,7 +684,7 @@ static void pnv_chip_power8_intc_create(PnvChip *chip, PowerPCCPU *cpu,
|
||||
return;
|
||||
}
|
||||
|
||||
pnv_cpu->icp = ICP(obj);
|
||||
pnv_cpu->intc = obj;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1086,7 +1086,7 @@ static ICPState *pnv_icp_get(XICSFabric *xi, int pir)
|
||||
{
|
||||
PowerPCCPU *cpu = ppc_get_vcpu_by_pir(pir);
|
||||
|
||||
return cpu ? pnv_cpu_state(cpu)->icp : NULL;
|
||||
return cpu ? ICP(pnv_cpu_state(cpu)->intc) : NULL;
|
||||
}
|
||||
|
||||
static void pnv_pic_print_info(InterruptStatsProvider *obj,
|
||||
@ -1099,7 +1099,7 @@ static void pnv_pic_print_info(InterruptStatsProvider *obj,
|
||||
CPU_FOREACH(cs) {
|
||||
PowerPCCPU *cpu = POWERPC_CPU(cs);
|
||||
|
||||
icp_pic_print_info(pnv_cpu_state(cpu)->icp, mon);
|
||||
icp_pic_print_info(ICP(pnv_cpu_state(cpu)->intc), mon);
|
||||
}
|
||||
|
||||
for (i = 0; i < pnv->num_chips; i++) {
|
||||
|
@ -198,7 +198,7 @@ static void pnv_unrealize_vcpu(PowerPCCPU *cpu)
|
||||
PnvCPUState *pnv_cpu = pnv_cpu_state(cpu);
|
||||
|
||||
qemu_unregister_reset(pnv_cpu_reset, cpu);
|
||||
object_unparent(OBJECT(pnv_cpu_state(cpu)->icp));
|
||||
object_unparent(OBJECT(pnv_cpu_state(cpu)->intc));
|
||||
cpu_remove_sync(CPU(cpu));
|
||||
cpu->machine_data = NULL;
|
||||
g_free(pnv_cpu);
|
||||
|
@ -48,7 +48,7 @@ typedef struct PnvCoreClass {
|
||||
#define PNV_CORE_TYPE_NAME(cpu_model) cpu_model PNV_CORE_TYPE_SUFFIX
|
||||
|
||||
typedef struct PnvCPUState {
|
||||
struct ICPState *icp;
|
||||
Object *intc;
|
||||
} PnvCPUState;
|
||||
|
||||
static inline PnvCPUState *pnv_cpu_state(PowerPCCPU *cpu)
|
||||
|
Loading…
Reference in New Issue
Block a user