Re: [PATCH 5/5] i2c: octeon,thunderx: Limit register access retries

From: Jan Glauber
Date: Thu Sep 22 2016 - 12:40:43 EST


On Wed, Sep 21, 2016 at 11:03:35PM +0200, Wolfram Sang wrote:
> On Wed, Sep 21, 2016 at 08:51:06AM +0200, Jan Glauber wrote:
> > Do not infinitely retry register readq and writeq operations
> > in order to not lock up the CPU in case the TWSI gets stuck.
> >
> > Return -EIO in case of a failed data read. For all other
> > cases just return so subsequent operations will fail
> > and trigger the recovery.
> >
> > Signed-off-by: Jan Glauber <jglauber@xxxxxxxxxx>
>
> I didn't really check, but have you considered using
> readq_poll_timeout() from iopoll.h?
>

Indeed, readq_poll_timeout() fits quite well here. It will lose some cycles
on mips but I'm not convinced that matters with i2c.

That would be the first user of readq_poll_timeout() in the kernel :)

--Jan