]> git.baikalelectronics.ru Git - kernel.git/commit
i2c: mpc: Restore reread of I2C status register
authorChris Packham <chris.packham@alliedtelesis.co.nz>
Fri, 2 Jul 2021 03:27:24 +0000 (15:27 +1200)
committerWolfram Sang <wsa@kernel.org>
Fri, 2 Jul 2021 07:12:51 +0000 (09:12 +0200)
commitd5d2d918dd8d071f8dde5b5001ed8b4fb936664f
treeb83fb6fe5865a4363536d124915e2850ab16eba4
parentad90a7d6881acfb0c16164f8fba83a0e79b01c03
i2c: mpc: Restore reread of I2C status register

Prior to commit 65362107eb56 ("i2c: mpc: Interrupt driven transfer") the
old interrupt handler would reread MPC_I2C_SR after checking the CSR_MIF
bit. When the driver was re-written this was removed as it seemed
unnecessary. However as it turns out this is necessary for i2c devices
which do clock stretching otherwise we end up thinking the bus is still
busy when processing the interrupt.

Fixes: 65362107eb56 ("i2c: mpc: Interrupt driven transfer")
Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-mpc.c