summaryrefslogtreecommitdiffstats
path: root/include/linux/irqchip
diff options
context:
space:
mode:
authorChristoffer Dall2018-07-16 15:06:22 +0200
committerMarc Zyngier2018-07-21 17:02:26 +0200
commit87322099052b6a534cecd3d303fc097d4560b7d0 (patch)
tree880ea15f8483cde93928f0836e7f7407e11b08e1 /include/linux/irqchip
parentKVM: arm/arm64: vgic: Add group field to struct irq (diff)
downloadkernel-qcow2-linux-87322099052b6a534cecd3d303fc097d4560b7d0.tar.gz
kernel-qcow2-linux-87322099052b6a534cecd3d303fc097d4560b7d0.tar.xz
kernel-qcow2-linux-87322099052b6a534cecd3d303fc097d4560b7d0.zip
KVM: arm/arm64: vgic: Signal IRQs using their configured group
Now when we have a group configuration on the struct IRQ, use this state when populating the LR and signaling interrupts as either group 0 or group 1 to the VM. Depending on the model of the emulated GIC, and the guest's configuration of the VMCR, interrupts may be signaled as IRQs or FIQs to the VM. Reviewed-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Christoffer Dall <christoffer.dall@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'include/linux/irqchip')
-rw-r--r--include/linux/irqchip/arm-gic.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/irqchip/arm-gic.h b/include/linux/irqchip/arm-gic.h
index 484f5bfa9f3d..6c4aaf04046c 100644
--- a/include/linux/irqchip/arm-gic.h
+++ b/include/linux/irqchip/arm-gic.h
@@ -104,6 +104,7 @@
#define GICH_LR_PENDING_BIT (1 << 28)
#define GICH_LR_ACTIVE_BIT (1 << 29)
#define GICH_LR_EOI (1 << 19)
+#define GICH_LR_GROUP1 (1 << 30)
#define GICH_LR_HW (1 << 31)
#define GICH_VMCR_ENABLE_GRP0_SHIFT 0