I’m trying for a couple of days now to make I2C3 work on the TK1. I’m using u-boot 21.4 and in pinmux-config file I’ve set the following vars.
PINCFG(CAM_I2C_SCL_PBB1, I2C3, NORMAL, NORMAL, INPUT, ENABLE, DEFAULT), PINCFG(CAM_I2C_SDA_PBB2, I2C3, NORMAL, NORMAL, INPUT, ENABLE, DEFAULT),
The other i2c channels work fine, only i2c3 doesn’t and when I say it doesn’t I mean it does weird things. Below there’s a screenshot of the problem I have.
and below another i2c channel, which is fine
I’ve tried to trace back the problem in the u-boot and the only thing I’ve found is that the i2c transfer fails inside send_recv_packets() function in drivers/i2c/tegra_i2c.c file. The problem seems to be that the wait_for_tx_fifo_empty() functions fails, whatever the timeout is and that happens because the count of the TX FIFO is always 7 and fails to meet the I2C_FIFO_DEPTH condition which is 8.
So, I’m lost in here. The output of i2c3 is very weird and I can’t find why.
Does anybody had the same issue?
Thank you in advance!