KVM: arm/arm64: Add ARM user space interrupt signaling ABI
authorAlexander Graf <agraf@suse.de>
Tue, 27 Sep 2016 19:08:05 +0000 (21:08 +0200)
committerChristoffer Dall <cdall@linaro.org>
Sun, 9 Apr 2017 14:49:38 +0000 (07:49 -0700)
commit3fe17e6826162021d5e9274949571b19fc94826b
treec244b62d6c38003c7f453f8ba39a7cb3d0586c91
parentb22e7df2d85fcbe8b36bab909b98c3d0239e69e6
KVM: arm/arm64: Add ARM user space interrupt signaling ABI

We have 2 modes for dealing with interrupts in the ARM world. We can
either handle them all using hardware acceleration through the vgic or
we can emulate a gic in user space and only drive CPU IRQ pins from
there.

Unfortunately, when driving IRQs from user space, we never tell user
space about events from devices emulated inside the kernel, which may
result in interrupt line state changes, so we lose out on for example
timer and PMU events if we run with user space gic emulation.

Define an ABI to publish such device output levels to userspace.

Reviewed-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Documentation/virtual/kvm/api.txt
arch/arm/include/uapi/asm/kvm.h
arch/arm64/include/uapi/asm/kvm.h
include/uapi/linux/kvm.h