diff options
Diffstat (limited to 'drivers/i2c/busses')
-rw-r--r-- | drivers/i2c/busses/i2c-bfin-twi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-bfin-twi.c b/drivers/i2c/busses/i2c-bfin-twi.c index 5fb5f3ee13a..71be486a224 100644 --- a/drivers/i2c/busses/i2c-bfin-twi.c +++ b/drivers/i2c/busses/i2c-bfin-twi.c | |||
@@ -201,7 +201,8 @@ static void bfin_twi_handle_interrupt(struct bfin_twi_iface *iface, | |||
201 | return; | 201 | return; |
202 | } | 202 | } |
203 | if (twi_int_status & MCOMP) { | 203 | if (twi_int_status & MCOMP) { |
204 | if ((read_MASTER_CTL(iface) & MEN) == 0 && | 204 | if (twi_int_status & (XMTSERV | RCVSERV) && |
205 | (read_MASTER_CTL(iface) & MEN) == 0 && | ||
205 | (iface->cur_mode == TWI_I2C_MODE_REPEAT || | 206 | (iface->cur_mode == TWI_I2C_MODE_REPEAT || |
206 | iface->cur_mode == TWI_I2C_MODE_COMBINED)) { | 207 | iface->cur_mode == TWI_I2C_MODE_COMBINED)) { |
207 | iface->result = -1; | 208 | iface->result = -1; |