Hi Francesco, On 22-07-12, Francesco Dolcini wrote: > From: Oleksandr Suvorov <oleksandr.suvorov@xxxxxxxxxxx> > > Set the i2c_adapter retries field to a sensible value. This allows > the i2c core to retry master_xfer()/master_xfer_atomic() when it > returns -EAGAIN. Currently the i2c-imx driver returns -EAGAIN only > on Tx arbitration failure (I2SR_IAL). > > Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@xxxxxxxxxxx> > Signed-off-by: Francesco Dolcini <francesco.dolcini@xxxxxxxxxxx> > --- > drivers/i2c/busses/i2c-imx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c > index e9e2db68b9fb..26738e713c94 100644 > --- a/drivers/i2c/busses/i2c-imx.c > +++ b/drivers/i2c/busses/i2c-imx.c > @@ -54,6 +54,7 @@ > #define DRIVER_NAME "imx-i2c" > > #define I2C_IMX_CHECK_DELAY 30000 /* Time to check for bus idle, in NS */ > +#define I2C_IMX_MAX_RETRIES 3 /* Retries on arbitration loss */ Just one question: Why 3 and should we document this within the commit message? Regards, Marco > /* > * Enable DMA if transfer byte size is bigger than this threshold. > @@ -1477,6 +1478,7 @@ static int i2c_imx_probe(struct platform_device *pdev) > i2c_imx->adapter.dev.parent = &pdev->dev; > i2c_imx->adapter.nr = pdev->id; > i2c_imx->adapter.dev.of_node = pdev->dev.of_node; > + i2c_imx->adapter.retries = I2C_IMX_MAX_RETRIES; > i2c_imx->base = base; > ACPI_COMPANION_SET(&i2c_imx->adapter.dev, ACPI_COMPANION(&pdev->dev)); > > -- > 2.25.1 > > >