aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/ata/ahci.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 6a4a2a25d97a..061817a3a0e5 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -1777,7 +1777,7 @@ static irqreturn_t ahci_interrupt(int irq, void *dev_instance)
1777 struct ahci_host_priv *hpriv; 1777 struct ahci_host_priv *hpriv;
1778 unsigned int i, handled = 0; 1778 unsigned int i, handled = 0;
1779 void __iomem *mmio; 1779 void __iomem *mmio;
1780 u32 irq_stat, irq_ack = 0; 1780 u32 irq_stat;
1781 1781
1782 VPRINTK("ENTER\n"); 1782 VPRINTK("ENTER\n");
1783 1783
@@ -1809,14 +1809,11 @@ static irqreturn_t ahci_interrupt(int irq, void *dev_instance)
1809 "interrupt on disabled port %u\n", i); 1809 "interrupt on disabled port %u\n", i);
1810 } 1810 }
1811 1811
1812 irq_ack |= (1 << i);
1813 }
1814
1815 if (irq_ack) {
1816 writel(irq_ack, mmio + HOST_IRQ_STAT);
1817 handled = 1; 1812 handled = 1;
1818 } 1813 }
1819 1814
1815 writel(irq_stat, mmio + HOST_IRQ_STAT);
1816
1820 spin_unlock(&host->lock); 1817 spin_unlock(&host->lock);
1821 1818
1822 VPRINTK("EXIT\n"); 1819 VPRINTK("EXIT\n");