input: ti_am335x_tsc: return IRQ_NONE if there was no IRQ for us
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Wed, 5 Jun 2013 14:30:00 +0000 (16:30 +0200)
committerSebastian Andrzej Siewior <bigeasy@linutronix.de>
Wed, 12 Jun 2013 16:50:23 +0000 (18:50 +0200)
The previous patch ("input/ti_am335x_tsc: ACK the HW_PEN irq in ISR")
acked the interrupt so we don't freeze if we don't handle an enabled
interrupt source. The interrupt core has a mechanism for this and to get
it work one should only say that it handled an interrupt if it is
actually the case.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
drivers/input/touchscreen/ti_am335x_tsc.c

index 2ba77039ab919a09ecfa2f873697b3d3fceb2089..0e9f02aeae6b3cdcd7a17de0fddb974ac11fade4 100644 (file)
@@ -314,10 +314,12 @@ static irqreturn_t titsc_irq(int irq, void *dev)
                titsc_writel(ts_dev, REG_IRQCLR, IRQENB_HW_PEN);
        }
 
-       titsc_writel(ts_dev, REG_IRQSTATUS, irqclr);
-
-       am335x_tsc_se_update(ts_dev->mfd_tscadc);
-       return IRQ_HANDLED;
+       if (irqclr) {
+               titsc_writel(ts_dev, REG_IRQSTATUS, irqclr);
+               am335x_tsc_se_update(ts_dev->mfd_tscadc);
+               return IRQ_HANDLED;
+       }
+       return IRQ_NONE;
 }
 
 static int titsc_parse_dt(struct platform_device *pdev,