On Wed, Mar 11, 2015 at 03:47:53PM +0200, Grygorii Strashko wrote: > Hi Felipe, > > On 03/11/2015 03:50 AM, Felipe Balbi wrote: > >On Mon, Mar 09, 2015 at 11:39:17AM -0500, Felipe Balbi wrote: > >>On Thu, Feb 19, 2015 at 12:06:49PM -0600, Felipe Balbi wrote: > >>>If either SCL or SDA are stuck low, we need to > >>>recover the bus using the procedure described > >>>on section 3.1.16 of the I2C specification. > >>> > >>>Note that we're trying to implement the procedure > >>>exactly as described by that section. First we > >>>check which line is stuck low, then implement > >>>one or the other procedure. If SDA recovery procedure > >>>fails, we reset our IP in an attempt to make it work. > >>> > >>>Signed-off-by: Felipe Balbi <balbi@xxxxxx> > >>>--- > >>> > >>>Tested with AM437x IDK, AM437x SK, BeagleBoneBlack and Beagle X15 with > >>>1000 iterations of i2cdetect on all available buses. > >>> > >>>That said, I couldn't get any device to hold the bus busy so I could > >>>see this working. If anybody has any good way of forcing a condition > >>>so that we need bus recovery, I'd be glad to look at. > >> > >>ping > > > >any comments here ?? Anybody at all ???? > > > > I think the I2C bus recovery infrastructure should be used here ;) > As I did there https://lkml.org/lkml/2014/12/1/397, but > there are no comments too :( Sorry, guys, a lot of stuff going on in I2C. Bus recovery needs a more generic look. I'll try, but can't promise for 4.1. If it fails 4.1., it will get priority for 4.2.
Attachment:
signature.asc
Description: Digital signature