aboutsummaryrefslogtreecommitdiffstats
path: root/include/kvm
diff options
context:
space:
mode:
Diffstat (limited to 'include/kvm')
-rw-r--r--include/kvm/arm_vgic.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/include/kvm/arm_vgic.h b/include/kvm/arm_vgic.h
index 7d8e61fa9928..f074539c6ac5 100644
--- a/include/kvm/arm_vgic.h
+++ b/include/kvm/arm_vgic.h
@@ -140,9 +140,23 @@ struct vgic_dist {
140 /* Interrupt enabled (one bit per IRQ) */ 140 /* Interrupt enabled (one bit per IRQ) */
141 struct vgic_bitmap irq_enabled; 141 struct vgic_bitmap irq_enabled;
142 142
143 /* Interrupt state is pending on the distributor */ 143 /* Level-triggered interrupt external input is asserted */
144 struct vgic_bitmap irq_level;
145
146 /*
147 * Interrupt state is pending on the distributor
148 */
144 struct vgic_bitmap irq_pending; 149 struct vgic_bitmap irq_pending;
145 150
151 /*
152 * Tracks writes to GICD_ISPENDRn and GICD_ICPENDRn for level-triggered
153 * interrupts. Essentially holds the state of the flip-flop in
154 * Figure 4-10 on page 4-101 in ARM IHI 0048B.b.
155 * Once set, it is only cleared for level-triggered interrupts on
156 * guest ACKs (when we queue it) or writes to GICD_ICPENDRn.
157 */
158 struct vgic_bitmap irq_soft_pend;
159
146 /* Level-triggered interrupt queued on VCPU interface */ 160 /* Level-triggered interrupt queued on VCPU interface */
147 struct vgic_bitmap irq_queued; 161 struct vgic_bitmap irq_queued;
148 162