input: atmel-maxtouch: Fix enabling of IRQ in worker thread
Enable the interrupt only when no work is to be scheduled.
Change-Id: I006688b73331428850936f0cfea14c10f41fcd52
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
diff --git a/drivers/input/touchscreen/atmel_maxtouch.c b/drivers/input/touchscreen/atmel_maxtouch.c
index c454f72..d2bd4df 100644
--- a/drivers/input/touchscreen/atmel_maxtouch.c
+++ b/drivers/input/touchscreen/atmel_maxtouch.c
@@ -1373,12 +1373,11 @@
kfree(message);
fail_worker:
- enable_irq(mxt->irq);
/* Make sure we just didn't miss a interrupt. */
if (mxt->read_chg() == 0){
- disable_irq(mxt->irq);
schedule_delayed_work(&mxt->dwork, 0);
- }
+ } else
+ enable_irq(mxt->irq);
}