Apalis imx8qm V1.1B, HDMI DDC not working

Hello,
we have an Apalis V1.1B imx8 module mounted on a custom board and we have some problems with the DDC bus in HDMI. The HDMI works fine (the display works) but it gives the following error:

[drm:cdns_hdmi_connector_get_modes] ERROR Invalid edid

The dts that we are using is based on the ixora V1.2 dts and we have added the following to enable the DDC I2C bus:

pinctrl_lpi2c0: lpi2c0grp {
	fsl,pins = <
		/*		
		IMX8QM_HDMI_TX0_TS_SCL_DMA_I2C0_SCL		0x04000022
		IMX8QM_HDMI_TX0_TS_SDA_DMA_I2C0_SDA		0x04000022
		*/
		IMX8QM_HDMI_TX0_TS_SCL_HDMI_TX0_I2C0_SCL  0xc600004c
		IMX8QM_HDMI_TX0_TS_SDA_HDMI_TX0_I2C0_SDA  0xc600004c		
	>;
};

/* Apalis I2C2 (DDC) */
&i2c0 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_lpi2c0>;
	#address-cells = <1>;
	#size-cells = <0>;
	clock-frequency = <100000>;
	status = "okay";	
};

&hdmi {
	ddc-i2c-bus = <&i2c0>;
	status = "okay";	
};

The “get-edid -b 2” app hangs without output and the i2cdtect -y 2 command gives a very strange output (with very slow response):

root@av2x:/# i2cdetect -y 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 
10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 
20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 
30: -- -- -- -- -- -- -- -- 38 39 3a 3b 3c 3d 3e 3f 
40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 
70: 70 71 72 73 74 75 76 77  

The rootfs is ubuntu 20.04 without any graphic support. The 205, 207 pins have pullup resistors at 3.3V and we use the HDMI2C1-14HDS for ESD protection. During the i2cdetect there is no activity at the I2C bus.

Do you have any advice?

Best Regards,
Giannis

Hello Giannis?

Do you maybe have some update on this issue? I’m trying to debug a similar problem and trying to understand the difference between HDMI_TX0_TS and HDMI_TX0_DDC pins.

HDMI_TX0_TS pins can be used as general purpose I2C while HDMI_TX0_DDC pins are reserved for the HDMI DDC only.

Not sure which ones are supposed to be used for the communication with I2C devices over HDMI.

Hi @grag !

Are you able to reproduce the same issue when using Reference Multimedia Image?

Best regards,