qemu/target/ppc
Cédric Le Goater 38afd772f8 spapr/xive: add KVM support
This introduces a set of helpers when KVM is in use, which create the
KVM XIVE device, initialize the interrupt sources at a KVM level and
connect the interrupt presenters to the vCPU.

They also handle the initialization of the TIMA and the source ESB
memory regions of the controller. These have a different type under
KVM. They are 'ram device' memory mappings, similarly to VFIO, exposed
to the guest and the associated VMAs on the host are populated
dynamically with the appropriate pages using a fault handler.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20190513084245.25755-3-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-05-29 11:39:45 +10:00
..
translate target/ppc: Use vector variable shifts for VSL, VSR, VSRA 2019-05-29 11:39:45 +10:00
Makefile.objs build: remove CONFIG_LIBDECNUMBER 2017-10-16 18:03:52 +02:00
arch_dump.c target/ppc: Add helper_mfvscr 2019-02-18 11:00:44 +11:00
compat.c target/ppc: Allow cpu compatiblity checks based on type, not instance 2018-06-21 21:22:53 +10:00
cpu-models.c target/ppc: Style fixes for ppc-models.[ch] 2019-04-26 10:41:24 +10:00
cpu-models.h target/ppc: Style fixes for ppc-models.[ch] 2019-04-26 10:41:24 +10:00
cpu-qom.h target/ppc: Implement large decrementer support for TCG 2019-03-12 12:07:49 +11:00
cpu.c target/ppc: support for 32-bit carry and overflow 2017-03-01 11:23:39 +11:00
cpu.h target/ppc: Convert to CPUClass::tlb_fill 2019-05-10 11:12:50 -07:00
dfp_helper.c target/ppc: Style fixes for dfp_helper.c 2019-04-26 10:42:38 +10:00
excp_helper.c target/ppc: Style fixes for excp_helper.c 2019-04-26 10:42:38 +10:00
fpu_helper.c target/ppc: Style fixes for fpu_helper.c 2019-04-26 10:42:38 +10:00
gdbstub.c target/ppc: Style fixes for gdbstub.c 2019-04-26 10:42:38 +10:00
helper.h target/ppc: Use vector variable shifts for VSL, VSR, VSRA 2019-05-29 11:39:45 +10:00
helper_regs.h target/ppc: Style fixes for helper_regs.h 2019-04-26 10:42:38 +10:00
int_helper.c target/ppc: Use vector variable shifts for VSL, VSR, VSRA 2019-05-29 11:39:45 +10:00
internal.h target/ppc: switch fpr/vsrl registers so all VSX registers are in host endian order 2019-03-12 14:33:04 +11:00
kvm-stub.c openpic: move KVM-specific declarations into separate openpic_kvm.h file 2018-03-06 13:16:29 +11:00
kvm.c spapr/xive: add KVM support 2019-05-29 11:39:45 +10:00
kvm_ppc.h spapr/xive: add KVM support 2019-05-29 11:39:45 +10:00
machine.c target/ppc: Style fixes for machine.c 2019-04-26 10:42:38 +10:00
mem_helper.c target/ppc: Style fixes for mem_helper.c 2019-04-26 10:42:38 +10:00
mfrom_table.inc.c target/ppc: Style fixes for mfrom_table.inc.c & mfrom_table_gen.c 2019-04-26 10:42:38 +10:00
mfrom_table_gen.c target/ppc: Style fixes for mfrom_table.inc.c & mfrom_table_gen.c 2019-04-26 10:42:38 +10:00
misc_helper.c target/ppc: Style fixes for misc_helper.c 2019-04-26 10:42:38 +10:00
mmu-book3s-v3.c target/ppc: Support for POWER9 native hash 2019-02-26 09:21:25 +11:00
mmu-book3s-v3.h Clean up header guards that don't match their file name 2019-05-13 08:58:55 +02:00
mmu-hash32.c ppc/hash32: Rework R and C bit updates 2019-04-26 11:37:57 +10:00
mmu-hash32.h target/ppc: Manage external HPT via virtual hypervisor 2017-03-01 11:23:39 +11:00
mmu-hash64.c ppc/hash64: Rework R and C bit updates 2019-04-26 11:37:57 +10:00
mmu-hash64.h ppc/hash64: Rework R and C bit updates 2019-04-26 11:37:57 +10:00
mmu-radix64.c target/ppc: Don't check UPRT in radix mode when in HV real mode 2019-04-26 11:37:57 +10:00
mmu-radix64.h target/ppc: Rename PATB/PATBE -> PATE 2019-02-26 09:21:25 +11:00
mmu_helper.c tcg: Use CPUClass::tlb_fill in cputlb.c 2019-05-10 11:12:50 -07:00
monitor.c target/ppc: Style fixes for monitor.c 2019-04-26 10:43:23 +10:00
timebase_helper.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
trace-events target/ppc/kvm: Fix trace typo 2019-05-29 11:39:44 +10:00
translate.c target/ppc: Use gen_io_start/end around DARN 2019-05-22 12:38:54 -04:00
translate_init.inc.c target/ppc: Convert to CPUClass::tlb_fill 2019-05-10 11:12:50 -07:00
user_only_helper.c target/ppc: Convert to CPUClass::tlb_fill 2019-05-10 11:12:50 -07:00