I have a design nearly identical to the QSB. Whereas the QSB uses the i.MX535 my design uses the i.MX536 for automotive temperature range. The board boots all the way to the Android desktop. I have tested multiple boards and each board has two of these i.MX53 circuits. All behave identical.
Using external bus analyzers we observe proper operation. IN the main case the i.MX53 reads a 0x60 from an I2C device. Yet the Linux app reads this as 0xFF. This happens on buses I2C1 and I2C2.
The i.MX536 has not had any eFuses programmed. It is as if instead of the I2C data line being configured as I/O, it is being an output only. The I/MX53 is writing the I2C clock and data properly, but I2C reads are bing read as all 1's.
Has anybody experienced this? It seems like a configuration error, but we are stumped so far for an explanation..