diff --git a/drivers/input/touchscreen/atmel_maxtouch.c b/drivers/input/touchscreen/atmel_maxtouch.c index e3977748b7c..cc18bc747be 100644 --- a/drivers/input/touchscreen/atmel_maxtouch.c +++ b/drivers/input/touchscreen/atmel_maxtouch.c @@ -1832,16 +1832,14 @@ static int mxt_resume(struct device *dev) if (error < 0) goto err_write_block; - enable_irq(mxt->irq); + /* Make sure we just didn't miss a interrupt. */ + if (mxt->read_chg() == 0) + schedule_delayed_work(&mxt->dwork, 0); + else + enable_irq(mxt->irq); mxt->is_suspended = false; - /* Make sure we just didn't miss a interrupt. */ - if (mxt->read_chg() == 0) { - disable_irq(mxt->irq); - schedule_delayed_work(&mxt->dwork, 0); - } - return 0; err_write_block: