ppc/pnv: create the ICP object under PnvCore
authorCédric Le Goater <clg@kaod.org>
Mon, 3 Apr 2017 07:46:03 +0000 (09:46 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Wed, 26 Apr 2017 02:00:42 +0000 (12:00 +1000)
commit960fbd29e56866ff7b1f2c6a24082774fd254bda
tree999628794287e098a6014a6a64a9d2b2bee929b9
parent47fea43aa3414fcbab270d84de307cce5657166c
ppc/pnv: create the ICP object under PnvCore

Each thread of a core is linked to an ICP. This allocates a PnvICPState
object before the PowerPCCPU object is realized and lets the XICSFabric
do the store under the 'intc' backlink when xics_cpu_setup() is
called.

This modeling removes the need of maintaining an array of ICP objects
under the PowerNV machine and also simplifies the XICSFabric icp_get()
handler.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/pnv.c
hw/ppc/pnv_core.c