Jetson TX2 I2C problem on custom board

Hello!
We have got an custom board with Jetson TX2 module, very close to P2597. The I2C GPIO subsystem for control signal 5V0_HDMI_EN the same than on P2597 with only difference on package type of TCA9539 but adresses the same. See circuit.

In P2597 signal 5V0_HDMI_EN routed to P14 port of TCA9539 and on custom board is fully similar. Address of TCA9539 is 0x74 (A0 and A1 is low).

But on load system board stucks on 10 seconds and in dmesg output we see the following errors:

10.568694] tegra-i2c 3160000.i2c: pio timed out addr: 0x74 tlen:28 rlen:4
[ 10.568715] tegra-i2c 3160000.i2c: — register dump for debugging ----
[ 10.568729] tegra-i2c 3160000.i2c: I2C_CNFG - 0x22c00
[ 10.568740] tegra-i2c 3160000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 10.568752] tegra-i2c 3160000.i2c: I2C_FIFO_CONTROL - 0xe0
[ 10.568764] tegra-i2c 3160000.i2c: I2C_FIFO_STATUS - 0x800040
[ 10.568775] tegra-i2c 3160000.i2c: I2C_INT_MASK - 0x7d
[ 10.568786] tegra-i2c 3160000.i2c: I2C_INT_STATUS - 0x0
[ 10.568798] tegra-i2c 3160000.i2c: i2c transfer timed out addr: 0x74
[ 10.568835] pca953x 0-0074: failed reading register
[ 10.568883] pca953x: probe of 0-0074 failed with error -110

Please help me to fix this error.

Thanks a lot!

Hi

No issue from the schematic.
Are you able to access it in system? Please double check it was mounted correctly.

You can have i2cdetect of the i2c tools to check if can detect it after boot to system.

sudo apt-get install i2c-tools

This is for Jetson TX2 module on our custom board:

nvidia@nvidia-desktop:~$ sudo i2cdetect -l
i2c-3 i2c 3190000.i2c I2C adapter
i2c-1 i2c c240000.i2c I2C adapter
i2c-8 i2c 31e0000.i2c I2C adapter
i2c-6 i2c 31c0000.i2c I2C adapter
i2c-4 i2c Tegra BPMP I2C adapter I2C adapter
i2c-2 i2c 3180000.i2c I2C adapter
i2c-0 i2c 3160000.i2c I2C adapter
i2c-7 i2c c250000.i2c I2C adapter
i2c-5 i2c 31b0000.i2c I2C adapter

nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 0
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –

nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – 4c – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 2
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 3
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 4
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – UU – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – UU – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 5
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 6
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
nvidia@nvidia-desktop:~$ sudo i2cdetect -y -r 7
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – UU – – –
50: 50 – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –

for i2c bus 0 and 6 command i2cdetect execute for very long time.

Thanks all!
Problem was in hardware: broken IC on I2C#0 bus.