I've already talked to blogic about this issue. He asked me to perform some tests on the platform even back to openwrt CC.
The bug in question occurs with the MT7628 chip and the I2C bus (WRTNode 2p board).
Configuring the pinmux and enabling the driver, the kernel correctly sees the i2c bus. But then going to use the "i2cdetect" command from i2c-tools package has a surprising result: devices are actually sees devices that are not connected.
Curious about the problem I connected my DSO and I did the probe of the SDA and SCL pins. Data and clock seem to be transferred correctly. So the problem seems to be in the "reading".
According to the i2c specification if SDA is pull-low and you do an i2cdetect the system should identify in the bus an ACK for each slave address, this does does not happen and the same list appear again.
Turning back to different versions this still happens, unfortunately I have not been able to test every single commit.
The test I've made:
Openwrt CC the device was not supported.
Openwrt first commit of the device support: the i2c bus was not recognized by the driver.
Openwrt trunk, the i2c bus is not registered
LEDE 12.01 the problem as described above.
LEDE HEAD: the problem as described above.
LEDE HEAD 4.9 (kernel): The problem as described above.
[[https://pastebin.com/uajwfWjn|i2cdetect result (same result with SDA pulled low)]]
The text was updated successfully, but these errors were encountered: