|
@@ -2218,12 +2218,13 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance)
|
|
else
|
|
else
|
|
handled = mv_host_intr(host, pending_irqs);
|
|
handled = mv_host_intr(host, pending_irqs);
|
|
}
|
|
}
|
|
- spin_unlock(&host->lock);
|
|
|
|
|
|
|
|
/* for MSI: unmask; interrupt cause bits will retrigger now */
|
|
/* for MSI: unmask; interrupt cause bits will retrigger now */
|
|
if (using_msi)
|
|
if (using_msi)
|
|
writel(hpriv->main_irq_mask, hpriv->main_irq_mask_addr);
|
|
writel(hpriv->main_irq_mask, hpriv->main_irq_mask_addr);
|
|
|
|
|
|
|
|
+ spin_unlock(&host->lock);
|
|
|
|
+
|
|
return IRQ_RETVAL(handled);
|
|
return IRQ_RETVAL(handled);
|
|
}
|
|
}
|
|
|
|
|