qemu-e2k/include/hw/ppc
Cédric Le Goater 40a5056c41 xive: add a get_tctx() method to the XiveRouter
It provides a mean to retrieve the XiveTCTX of a CPU. This will become
necessary with future changes which move the interrupt presenter
object pointers under the PowerPCCPU machine_data.

The PowerNV machine has an extra requirement on TIMA accesses that
this new method addresses. The machine can perform indirect loads and
stores on the TIMA on behalf of another CPU. The PIR being defined in
the controller registers, we need a way to peek in the controller
model to find the PIR value.

The XiveTCTX is moved above the XiveRouter definition to avoid forward
typedef declarations.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-02-04 18:44:18 +11:00
..
fdt.h target/ppc: Pass cpu instead of env to ppc_create_page_sizes_prop() 2018-04-27 18:05:22 +10:00
mac_dbdma.h mac_dbdma: remove DBDMA_init() function 2017-09-27 13:05:41 +10:00
openpic_kvm.h openpic: move KVM-specific declarations into separate openpic_kvm.h file 2018-03-06 13:16:29 +11:00
openpic.h mac_newworld: simplify IRQ wiring 2018-12-21 09:24:23 +11:00
pnv_core.h pnv_core: Allocate cpu thread objects individually 2018-06-16 16:32:33 +10:00
pnv_lpc.h ppc/pnv: introduce a new isa_create() operation to the chip model 2018-06-21 21:22:53 +10:00
pnv_occ.h pnv: Fix build failures on some host platforms 2017-05-11 09:45:15 +10:00
pnv_psi.h pnv/psi: move the ICSState qemu_irq array under the PSI device model 2019-01-09 09:28:14 +11:00
pnv_xscom.h ppc/pnv: fix PnvChip redefinition in <hw/ppc/pnv_xscom.h> 2018-01-27 17:25:27 +11:00
pnv.h spapr: modify the prototype of the cpu_intc_create() method 2019-01-09 09:28:14 +11:00
ppc4xx.h ppc4xx: Use ram_addr_t in ppc4xx_sdram_adjust() 2019-02-04 18:44:17 +11:00
ppc_e500.h intc/openpic: Build openpic only once 2013-07-09 21:33:02 +02:00
ppc.h mac_newworld: add via machine option to control mac99 VIA/ADB configuration 2018-06-16 16:32:33 +10:00
spapr_cpu_core.h spapr_cpu_core: migrate per-CPU data 2018-06-21 21:22:53 +10:00
spapr_drc.h Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
spapr_irq.h spapr: introduce a new sPAPR IRQ backend supporting XIVE and XICS 2019-01-09 09:28:14 +11:00
spapr_ovec.h spapr: Support ibm,dynamic-memory-v2 property 2018-04-27 18:05:23 +10:00
spapr_rtas.h tests: add RTAS command in the protocol 2016-09-23 10:29:40 +10:00
spapr_vio.h spapr: introduce a spapr_qirq() helper 2017-12-15 09:49:24 +11:00
spapr_xive.h ppc: Fix duplicated typedefs to be able to compile with Clang in gnu99 mode 2019-01-22 05:14:33 +01:00
spapr.h ppc: Fix duplicated typedefs to be able to compile with Clang in gnu99 mode 2019-01-22 05:14:33 +01:00
xics_spapr.h ppc: Move spapr-related prototypes from xics.h into a seperate header file 2019-01-22 05:14:33 +01:00
xics.h ppc: Move spapr-related prototypes from xics.h into a seperate header file 2019-01-22 05:14:33 +01:00
xive_regs.h ppc/xive: introduce a simplified XIVE presenter 2018-12-21 09:37:04 +11:00
xive.h xive: add a get_tctx() method to the XiveRouter 2019-02-04 18:44:18 +11:00