diff options
author | Stefan Agner <stefan.agner@toradex.com> | 2018-01-24 17:12:03 +0100 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2018-03-08 14:54:44 +0100 |
commit | 6c5a561f09a61ca507ce26f04790197f552ccf9a (patch) | |
tree | 14690eb1c2973634e221dc317350462128bf4b0b /drivers/i2c/busses/i2c-riic.c | |
parent | fcfdb9c32075501e64751cc6a79fd91d15933692 (diff) | |
parent | 2e4575e9ced4a5ac27cf4010c2e975c271b155f7 (diff) |
Merge remote-tracking branch 'linux-fslc/4.9-1.0.x-imx' into toradex_4.9-1.0.x-imx-next
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Diffstat (limited to 'drivers/i2c/busses/i2c-riic.c')
-rw-r--r-- | drivers/i2c/busses/i2c-riic.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-riic.c b/drivers/i2c/busses/i2c-riic.c index 8f11d347b3ec..c811af4c8d81 100644 --- a/drivers/i2c/busses/i2c-riic.c +++ b/drivers/i2c/busses/i2c-riic.c @@ -218,8 +218,12 @@ static irqreturn_t riic_tend_isr(int irq, void *data) } if (riic->is_last || riic->err) { - riic_clear_set_bit(riic, 0, ICIER_SPIE, RIIC_ICIER); + riic_clear_set_bit(riic, ICIER_TEIE, ICIER_SPIE, RIIC_ICIER); writeb(ICCR2_SP, riic->base + RIIC_ICCR2); + } else { + /* Transfer is complete, but do not send STOP */ + riic_clear_set_bit(riic, ICIER_TEIE, 0, RIIC_ICIER); + complete(&riic->msg_done); } return IRQ_HANDLED; |