diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2017-10-27 10:28:39 -0400 |
---|---|---|
committer | Christoffer Dall <christoffer.dall@linaro.org> | 2017-11-10 03:28:52 -0500 |
commit | 196b136498b35f1cd787b84465f235e69dbc757c (patch) | |
tree | 23890d9f31732cfb18203945c3bcb80ca52699fb /include/kvm | |
parent | 74fe55dc9ab77142e3c4783ecc5b87d494164452 (diff) |
KVM: arm/arm64: GICv4: Wire mapping/unmapping of VLPIs in VFIO irq bypass
Let's use the irq bypass mechanism also used for x86 posted interrupts
to intercept the virtual PCIe endpoint configuration and establish our
LPI->VLPI mapping.
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'include/kvm')
-rw-r--r-- | include/kvm/arm_vgic.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/kvm/arm_vgic.h b/include/kvm/arm_vgic.h index 7eeb6c2a2f9c..2f750c770bf2 100644 --- a/include/kvm/arm_vgic.h +++ b/include/kvm/arm_vgic.h | |||
@@ -373,4 +373,12 @@ int kvm_vgic_setup_default_irq_routing(struct kvm *kvm); | |||
373 | 373 | ||
374 | int kvm_vgic_set_owner(struct kvm_vcpu *vcpu, unsigned int intid, void *owner); | 374 | int kvm_vgic_set_owner(struct kvm_vcpu *vcpu, unsigned int intid, void *owner); |
375 | 375 | ||
376 | struct kvm_kernel_irq_routing_entry; | ||
377 | |||
378 | int kvm_vgic_v4_set_forwarding(struct kvm *kvm, int irq, | ||
379 | struct kvm_kernel_irq_routing_entry *irq_entry); | ||
380 | |||
381 | int kvm_vgic_v4_unset_forwarding(struct kvm *kvm, int irq, | ||
382 | struct kvm_kernel_irq_routing_entry *irq_entry); | ||
383 | |||
376 | #endif /* __KVM_ARM_VGIC_H */ | 384 | #endif /* __KVM_ARM_VGIC_H */ |