|
@@ -703,6 +703,9 @@ static void iommu_poll_events(struct amd_iommu *iommu)
|
|
|
u32 head, tail;
|
|
u32 head, tail;
|
|
|
unsigned long flags;
|
|
unsigned long flags;
|
|
|
|
|
|
|
|
|
|
+ /* enable event interrupts again */
|
|
|
|
|
+ writel(MMIO_STATUS_EVT_INT_MASK, iommu->mmio_base + MMIO_STATUS_OFFSET);
|
|
|
|
|
+
|
|
|
spin_lock_irqsave(&iommu->lock, flags);
|
|
spin_lock_irqsave(&iommu->lock, flags);
|
|
|
|
|
|
|
|
head = readl(iommu->mmio_base + MMIO_EVT_HEAD_OFFSET);
|
|
head = readl(iommu->mmio_base + MMIO_EVT_HEAD_OFFSET);
|