Hello, This has come up more than once and just wanted to hash out a design for the I2C manager driver. Having more than one slave is quite common and the slowest slave pulls the clock low prohibiting the master from starting another transaction on the bus.
What we would like to have is : 1. Using the bus while we are waiting for responses from a slave (I assume this would be a case of clock stretching by the slave) 2. Clock timeout on I2C Bus 3. Read back register writes or Verified register writes - Multiple register writes will not be supported in this What do people think about the above features in the I2C Manager and also how to deal with it ? I have some knowledge of I2C and based on that I can think of some kind of solution for 2. and 3.. 1 however seems to be a bit complicated since the nature of I2C is such that it locks up the bus for any future transactions until the slave makes the clock high. Does anybody have any possible solutions for this problem ? Hoping to get answers from the community and get this feature written soon. Regards, Vipul Rahane