sky2: Fix for interrupt handler
authorMirko Lindner <mlindner@marvell.com>
Tue, 3 Jul 2012 23:38:46 +0000 (23:38 +0000)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 16 Nov 2012 16:47:20 +0000 (16:47 +0000)
commit d663d181b9e92d80c2455e460e932d34e7a2a7ae upstream.

Re-enable interrupts if it is not our interrupt

Signed-off-by: Mirko Lindner <mlindner@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/net/ethernet/marvell/sky2.c

index 11ddd83..69fc888 100644 (file)
@@ -3060,8 +3060,10 @@ static irqreturn_t sky2_intr(int irq, void *dev_id)
 
        /* Reading this mask interrupts as side effect */
        status = sky2_read32(hw, B0_Y2_SP_ISRC2);
-       if (status == 0 || status == ~0)
+       if (status == 0 || status == ~0) {
+               sky2_write32(hw, B0_Y2_SP_ICR, 2);
                return IRQ_NONE;
+       }
 
        prefetch(&hw->st_le[hw->st_idx]);