qemu-cr16/include/hw/ppc
Cédric Le Goater 2e66cdb715 spapr/irq: add an 'nr_irq' parameter to initialize the backend.
When using the 'dual' interrupt mode, the source numbers of both sPAPR
IRQ backends are aligned to share a common IRQ number space and to use
a similar mapping of the machine qemu_irq array which is indexed by
the source number.

The XICS IRQ number range initially being [ 0x1000 - 0x2000 ], this
requires to change the XICS ICSState offset to 0 and to provision for
an extra 4K of source numbers and qemu_irqs which will never be used
by the machine when running under the XICS interrupt mode. This is not
an optimal solution.

Change the init() method to allocate an IRQ number space of the
expected size for the XICS sPAPR IRQ backend. It breaks the interrupt
signaling when under the 'dual' mode because source numbers have
unexpected values but next patch will fix that.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-Id: <20190213210756.27032-2-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-02-17 21:54:02 +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.h mac_newworld: simplify IRQ wiring 2018-12-21 09:24:23 +11:00
openpic_kvm.h openpic: move KVM-specific declarations into separate openpic_kvm.h file 2018-03-06 13:16:29 +11:00
pnv.h spapr: modify the prototype of the cpu_intc_create() method 2019-01-09 09:28:14 +11:00
pnv_core.h ppc/pnv: introduce a CPU machine_data 2019-02-04 18:44:18 +11: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
ppc.h mac_newworld: add via machine option to control mac99 VIA/ADB configuration 2018-06-16 16:32:33 +10: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
spapr.h spapr: Rename xics to intc in interrupt controller agnostic code 2019-02-17 21:54:02 +11:00
spapr_cpu_core.h spapr: move the interrupt presenters under machine_data 2019-02-04 18:44:18 +11:00
spapr_drc.h Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
spapr_irq.h spapr/irq: add an 'nr_irq' parameter to initialize the backend. 2019-02-17 21:54:02 +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
xics.h ppc: Move spapr-related prototypes from xics.h into a seperate header file 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
xive.h xive: Only set source type for LSIs 2019-02-17 21:54:02 +11:00
xive_regs.h ppc/xive: introduce a simplified XIVE presenter 2018-12-21 09:37:04 +11:00