summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kvm/book3s_xics.h
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2013-04-27 02:28:37 +0200
committerAlexander Graf <agraf@suse.de>2013-05-02 15:28:36 +0200
commit5975a2e0950291a6bfe9fd5880e7952ff87764be (patch)
treea27a2f6645a74ad756ac4a3eba21e1086beab25d /arch/powerpc/kvm/book3s_xics.h
parentkvm/ppc/mpic: fix missing unlock in set_base_addr() (diff)
downloadlinux-5975a2e0950291a6bfe9fd5880e7952ff87764be.tar.xz
linux-5975a2e0950291a6bfe9fd5880e7952ff87764be.zip
KVM: PPC: Book3S: Add API for in-kernel XICS emulation
This adds the API for userspace to instantiate an XICS device in a VM and connect VCPUs to it. The API consists of a new device type for the KVM_CREATE_DEVICE ioctl, a new capability KVM_CAP_IRQ_XICS, which functions similarly to KVM_CAP_IRQ_MPIC, and the KVM_IRQ_LINE ioctl, which is used to assert and deassert interrupt inputs of the XICS. The XICS device has one attribute group, KVM_DEV_XICS_GRP_SOURCES. Each attribute within this group corresponds to the state of one interrupt source. The attribute number is the same as the interrupt source number. This does not support irq routing or irqfd yet. Signed-off-by: Paul Mackerras <paulus@samba.org> Acked-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'arch/powerpc/kvm/book3s_xics.h')
-rw-r--r--arch/powerpc/kvm/book3s_xics.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kvm/book3s_xics.h b/arch/powerpc/kvm/book3s_xics.h
index e4fdec3dde77..dd9326c5c19b 100644
--- a/arch/powerpc/kvm/book3s_xics.h
+++ b/arch/powerpc/kvm/book3s_xics.h
@@ -88,6 +88,7 @@ struct kvmppc_ics {
struct kvmppc_xics {
struct kvm *kvm;
+ struct kvm_device *dev;
struct dentry *dentry;
u32 max_icsid;
bool real_mode;