Created attachment 2224 [details] i2c trace for lost arbitration issue Platform: MinnowMax Component: I2C Usage: use I2C to control audio codec and D-Amp Analysis: According to i2c bus specification (http://i2c.info/i2c-bus-specification), the SDA shall change [state] during SCL low as showed in the picture below. We did manage to capture the trace when the issue occurred (see attachments). The oscilloscope trace shows the SDA changed [state] when SCL was rising edge. We suspected this might have caused the “No ACK” was detected at master whereas the slave actually was responding “ACK”. As a result, the master no longer supplied clock and the slave kept on waiting for clock and holding the SDA line and caused stall. We also managed to reproduce the I2C Lost Arbitration Issue on MinnowMax using 3rd party commercial product (I2C Test Board NXP OM6275 available at http://www.nxp.com/demoboard/OM6275.html). Recommend to use NXP OM6275 to reproduce the problem for further investigation. Observation for the issue when using NXP OM6275 (1) The issue is not seen if the supply power is from MinnowBoard through the on board USB port. The failure is reproducible when the NXP OM6275 is connected to external source such as Laptop USB port or external power supply to JP1-Pin 1 (V+) of the OM6275. (2)The issue is not seen if oscilloscope is connected to capture the trace
i2c interface has been updated with a dedicate i2c level shift PCA9306, design review complete, ready to order prototypes.
Updating assignee to new office e-mail address.
We are no longer tracking in Yocto Project Bugzilla MinnowBoard and MinnowBoard-MAX HW and firmware bugs.