On Monday 16 February 2009, Jean Delvare wrote: > > There's no guarantee of idempotency in messages; only > > callers can know if retrying a given partially completed > > message is safe. And since fault reporting is still goofy, > > we can't know just where arbitration was lost... in the > > first master transmit, second (after repeated START), > > third, etc. > > As already explained by Clifford, arbitration loss is about messages > which have not been transmitted at all. So retrying is always OK. I must have missed that. It's not correct, in any case. Messages can easily have been *partially* transmitted. Loss of arbitration appears at the first transmitted bit where one master sends '0' and overrides another, which is sending '1' instead. Ideally it's while addressing a device, but it could be after some data bytes have been sent ... and, depending on the slave, acted upon. Even after one or more repeated starts. - Dave -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html