When mxs_i2c_pio_wait_xfer_end returns with a return code of -ENXIO, the
NO_SLAVE_ACK_IRQ bit is set in CTRL1.
In this case, do not print an error message, because every NAK would
otherwise generate a new message.

Signed-off-by: Michael Thalmeier <[email protected]>
---
 drivers/i2c/busses/i2c-mxs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-mxs.c b/drivers/i2c/busses/i2c-mxs.c
index 5738556..e2dbb9c 100644
--- a/drivers/i2c/busses/i2c-mxs.c
+++ b/drivers/i2c/busses/i2c-mxs.c
@@ -527,7 +527,7 @@ static int mxs_i2c_pio_setup_xfer(struct i2c_adapter *adap,
 
                        /* Wait for the end of the transfer. */
                        ret = mxs_i2c_pio_wait_xfer_end(i2c);
-                       if (ret) {
+                       if (ret && ret != -ENXIO) {
                                dev_err(i2c->dev,
                                        "PIO: Failed to finish WRITE cmd!\n");
                                break;
-- 
2.9.2

Reply via email to