Sonasath, Moiz had written, on 07/15/2009 10:25 AM, the following:
diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c
index d280acf..05b5e4c 100644
--- a/drivers/i2c/busses/i2c-omap.c
+++ b/drivers/i2c/busses/i2c-omap.c
@@ -685,8 +685,10 @@ omap_i2c_isr(int this_irq, void *dev_id)
err |= OMAP_I2C_STAT_AL;
}
if (stat & (OMAP_I2C_STAT_ARDY | OMAP_I2C_STAT_NACK |
- OMAP_I2C_STAT_AL))
+ OMAP_I2C_STAT_AL)) {
omap_i2c_complete_cmd(dev, err);
+ return IRQ_HANDLED;
+ }
What is the status of IRQ_STAT register? Who will clear that if we return immediately from ISR? Isr will be reinvoked and we'd handle the same anyways..
[Moiz]
Correct me if I am wrong, but you are referring to the OMAP_I2C_STAT_REG (which has the interrupt status information).
>This is actually ACKED just before going into the NACK|AL|ARDY error
cases. I suppose a few days back you also sent out a
>atch to change this to ACK all interrupts other than RRDY/RDR and
XRDY/XDR as we have to ACK these only after we service them.
I think this conflicts with [1]
[Moiz]
Actually, it does not conflict with [1], as [1] changes the later part of the code allowing this patch to be applied cleanly.
Got it. Thanks for clarifying. my bad.
Acked-by: Nishanth Menon <nm@xxxxxx>
--
Regards,
Nishanth Menon
--
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