Commit 170af3cb authored by chandra shekhar's avatar chandra shekhar Committed by Tony Lindgren

Patch for I2C transmit overflow error

This patch is to fix I2C transmit overflow error.
Signed-off-by: default avatarChandra Shekhar <x0044955@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 01636593
...@@ -661,6 +661,7 @@ omap_i2c_isr(int this_irq, void *dev_id) ...@@ -661,6 +661,7 @@ omap_i2c_isr(int this_irq, void *dev_id)
} }
} }
omap_i2c_ack_stat(dev, stat & (OMAP_I2C_STAT_RRDY | OMAP_I2C_STAT_RDR)); omap_i2c_ack_stat(dev, stat & (OMAP_I2C_STAT_RRDY | OMAP_I2C_STAT_RDR));
continue;
} }
if (stat & (OMAP_I2C_STAT_XRDY | OMAP_I2C_STAT_XDR)) { if (stat & (OMAP_I2C_STAT_XRDY | OMAP_I2C_STAT_XDR)) {
u8 num_bytes = 1; u8 num_bytes = 1;
...@@ -694,13 +695,14 @@ omap_i2c_isr(int this_irq, void *dev_id) ...@@ -694,13 +695,14 @@ omap_i2c_isr(int this_irq, void *dev_id)
omap_i2c_write_reg(dev, OMAP_I2C_DATA_REG, w); omap_i2c_write_reg(dev, OMAP_I2C_DATA_REG, w);
} }
omap_i2c_ack_stat(dev, stat & (OMAP_I2C_STAT_XRDY | OMAP_I2C_STAT_XDR)); omap_i2c_ack_stat(dev, stat & (OMAP_I2C_STAT_XRDY | OMAP_I2C_STAT_XDR));
continue;
} }
if (stat & OMAP_I2C_STAT_ROVR) { if (stat & OMAP_I2C_STAT_ROVR) {
dev_err(dev->dev, "Receive overrun\n"); dev_err(dev->dev, "Receive overrun\n");
dev->cmd_err |= OMAP_I2C_STAT_ROVR; dev->cmd_err |= OMAP_I2C_STAT_ROVR;
} }
if (stat & OMAP_I2C_STAT_XUDF) { if (stat & OMAP_I2C_STAT_XUDF) {
dev_err(dev->dev, "Transmit overflow\n"); dev_err(dev->dev, "Transmit underflow\n");
dev->cmd_err |= OMAP_I2C_STAT_XUDF; dev->cmd_err |= OMAP_I2C_STAT_XUDF;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment