linux/arch/powerpc
Suresh Warrier c57875f5f9 KVM: PPC: Book3S HV: Enable IRQ bypass
Add the irq_bypass_add_producer and irq_bypass_del_producer
functions. These functions get called whenever a GSI is being
defined for a guest. They create/remove the mapping between
host real IRQ numbers and the guest GSI.

Add the following helper functions to manage the
passthrough IRQ map.

kvmppc_set_passthru_irq()
  Creates a mapping in the passthrough IRQ map that maps a host
  IRQ to a guest GSI. It allocates the structure (one per guest VM)
  the first time it is called.

kvmppc_clr_passthru_irq()
  Removes the passthrough IRQ map entry given a guest GSI.
  The passthrough IRQ map structure is not freed even when the
  number of mapped entries goes to zero. It is only freed when
  the VM is destroyed.

[paulus@ozlabs.org - modified to use is_pnv_opal_msi() rather than
 requiring all passed-through interrupts to use the same irq_chip;
 changed deletion so it zeroes out the r_hwirq field rather than
 copying the last entry down and decrementing the number of entries.]

Signed-off-by: Suresh Warrier <warrier@linux.vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
2016-09-09 16:26:51 +10:00
..
boot Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2016-08-02 16:37:12 -04:00
configs powerpc updates for 4.8 # 1 2016-07-30 21:01:36 -07:00
crypto crypto: crc32c-vpmsum - Convert to CPU feature based module autoloading 2016-08-09 14:50:17 +10:00
include KVM: PPC: Book3S HV: Introduce kvmppc_passthru_irqmap 2016-09-09 16:26:19 +10:00
kernel powerpc: move hmi.c to arch/powerpc/kvm/ 2016-09-09 16:18:07 +10:00
kvm KVM: PPC: Book3S HV: Enable IRQ bypass 2016-09-09 16:26:51 +10:00
lib powerpc/32: Fix crash during static key init 2016-08-10 19:41:58 +10:00
math-emu
mm powerpc/mm: Speed up computation of base and actual page size for a HPTE 2016-09-09 16:14:48 +10:00
net powerpc/ebpf/jit: Implement JIT compiler for extended BPF 2016-06-24 15:17:57 +10:00
oprofile powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
perf powerpc/perf: Fix incorrect event codes in power9-event-list 2016-08-04 20:22:34 +10:00
platforms powerpc/powernv: Provide facilities for EOI, usable from real mode 2016-09-09 16:17:59 +10:00
scripts powerpc/ftrace: Add Kconfig & Make glue for mprofile-kernel 2016-03-07 14:53:56 +11:00
sysdev powerpc/xics: Properly set Edge/Level type and enable resend 2016-08-09 14:50:18 +10:00
xmon powerpc: Move cpu_has_feature() to a separate file 2016-08-01 11:15:03 +10:00
Kconfig Implements HARDENED_USERCOPY verification of copy_to_user/copy_from_user 2016-08-08 14:48:14 -07:00
Kconfig.debug powerpc/mm: Catch usage of cpu/mmu_has_feature() before jump label init 2016-08-01 11:15:06 +10:00
Makefile powerpc/Makefile: Use cflags-y/aflags-y for setting endian options 2016-08-10 23:01:53 +10:00
relocs_check.sh powerpc: Convert relocs_check to a shell script using grep 2015-03-23 14:47:39 +11:00