board: gw_ventana: gsc: fix GSC read/write functions
authorTim Harvey <tharvey@gateworks.com>
Thu, 24 Mar 2022 15:32:00 +0000 (08:32 -0700)
committerTom Rini <trini@konsulko.com>
Thu, 31 Mar 2022 12:27:51 +0000 (08:27 -0400)
commit 7c84319af9c7 ("dm: gpio: Correct use of -ENODEV in drivers")
changed the return code for an I2C NAK from -ENODEV to -EREMOTEIO.

Update the gsc_i2c_read and gsc_i2c_write functions for this change
to properly retry the transaction on a NAK meaning the GSC is busy.

Fixes: 7c84319af9c7 ("dm: gpio: Correct use of -ENODEV in drivers")
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Reviewed-by: Fabio Estevam <festevam@denx.de>
board/gateworks/gw_ventana/gsc.c

index 324e5db..a5d6de7 100644 (file)
@@ -41,7 +41,7 @@ int gsc_i2c_read(uchar chip, uint addr, int alen, uchar *buf, int len)
                        break;
                debug("%s: 0x%02x 0x%02x retry%d: %d\n", __func__, chip, addr,
                      n, ret);
-               if (ret != -ENODEV)
+               if (ret != -EREMOTEIO)
                        break;
                mdelay(10);
        }
@@ -60,7 +60,7 @@ int gsc_i2c_write(uchar chip, uint addr, int alen, uchar *buf, int len)
                        break;
                debug("%s: 0x%02x 0x%02x retry%d: %d\n", __func__, chip, addr,
                      n, ret);
-               if (ret != -ENODEV)
+               if (ret != -EREMOTEIO)
                        break;
                mdelay(10);
        }