We are bringing up a new imx8mp board that we have designed. All is functional except the HDMI interface. It almost works with some monitors.
Basically the issue is that the system can't read the DDC data across the HDMI's I2C bus. The design we have is identical to one we have used on another imx8mp board, but we are using the latest NXP 6.1.55_2.2.0 Yocto Linux system.
Looking at the HDMI I2C signals to the monitor it looks like the SCL to SDA timings are a bit off. SDA is changing very close to the SCL -ve transition and we wonder if this could be the cause.
This I2C bus appears to be driven by a special I2C EDID E-DDC interface in the imx8mp. I can't see any particular settings for this in the DTS.
1. Where is the configuration for this I2C type of device ?
2. Has anyone seen this issue before ?
3. Any ideas ?
已解决! 转到解答。
I have found the issue. We are using a micro HDMI connector on this board. We used a Wurth 685119248123 part and went with the pinout defined on that datasheet. This was wrong. They have updated the datasheet to a 0002.000 version.
However the DDC I2C timings do look a little tight to me. I tried increasing the value in the EDDC I2C DDC SDA Hold Register and timings look better to me.
Sorry for the noise.
I have found the issue. We are using a micro HDMI connector on this board. We used a Wurth 685119248123 part and went with the pinout defined on that datasheet. This was wrong. They have updated the datasheet to a 0002.000 version.
However the DDC I2C timings do look a little tight to me. I tried increasing the value in the EDDC I2C DDC SDA Hold Register and timings look better to me.
Sorry for the noise.