now that we're running on a thread, there's no problem in doing lots of work as IRQs won't be disabled anymore. Signed-off-by: Felipe Balbi <balbi@xxxxxx> --- drivers/i2c/busses/i2c-omap.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index 6e0b406..dba174c 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c @@ -886,7 +886,7 @@ omap_i2c_threaded_isr(int this_irq, void *dev_id) struct omap_i2c_dev *dev = dev_id; u16 bits; u16 stat; - int err = 0, count = 0; + int err = 0; if (pm_runtime_suspended(dev->dev)) return IRQ_NONE; @@ -903,12 +903,6 @@ omap_i2c_threaded_isr(int this_irq, void *dev_id) } dev_dbg(dev->dev, "IRQ (ISR = 0x%04x)\n", stat); - if (count++ == 100) { - dev_warn(dev->dev, "Too much work in one IRQ\n"); - omap_i2c_complete_cmd(dev, err); - return IRQ_HANDLED; - } - complete: if (stat & OMAP_I2C_STAT_NACK) { dev_err(dev->dev, "No Acknowledge\n"); @@ -1028,7 +1022,7 @@ complete: } } while (stat); - return count ? IRQ_HANDLED : IRQ_NONE; + return IRQ_HANDLED; } static const struct i2c_algorithm omap_i2c_algo = { -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html