> > Timeout value. I consider I2C a static bus with no hotplugging. So, > > either we have seen a START bit and know we are inside a transaction or > > SDA is low because a slave is in an unknown state. > This is probably true in at least 9 out of 10 cases today. I wonder if > that will stay as is. Up to you to ignore it. (I promise not to be > offended.) If that will be the case somewhen, bus recovery might be a bad idea in general. Then again, such a setup is the one needing it most, probably ;) But hotplugging I2C is desperatly asking for problems. > > > > This scl check should not depend on skip_sda_polling, or? > > > Well right. But note this might also just be a slave doing clock > > > streching. > > > > Which is a good reason to exit recovery. > Not necessarily. If a slave hangs and would need say 5 additional clocks > it still can stretch the 2nd clock cycle. While unlikely on the bit-level, still true. Need to think about it. -- Pengutronix e.K. | Wolfram Sang | Industrial Linux Solutions | http://www.pengutronix.de/ |
Attachment:
signature.asc
Description: Digital signature