How to Use I2c Hub
From ESS-WIKI
Contents
Overview
ROM-5780 supports one I2C hub.The I2C7 of it is converted to a 4-way I2C9 to I2C12 via TPA9545. It's a quad bidirectional switch controlled via the I2C bus, the SCL/SDA upstream pair fans out to four downstream pairs, or channels. It should be noted that the address of the connected I2C device cannot be 0x73, because the address of TPA9545 is already 0x73. If the address is the same, there will be a conflict and the data cannot be transferred.
Lists the bus of the I2C Hub
I2c-9 to I2c-12 is routed from the i2c7 of ROM-5780 through the hub.
root@linaro-alip:~# i2cdetect -l i2c-7 i2c rk3x-i2c I2C adapter i2c-9 i2c i2c-7-mux (chan_id 0) I2C adapter i2c-10 i2c i2c-7-mux (chan_id 1) I2C adapter i2c-11 i2c i2c-7-mux (chan_id 2) I2C adapter i2c-12 i2c i2c-7-mux (chan_id 3) I2C adapter
Detect device address
For example I2C9
root@linaro-alip:~# i2cdetect -y 9
Lists the bus of the I2C Hub
I2c9-i2c12 is routed from the i2c7 of ROM-5780 through the hub.
root@linaro-alip:~# i2cdetect -l i2c-0 i2c rk3x-i2c I2C adapter i2c-1 i2c rk3x-i2c I2C adapter i2c-2 i2c rk3x-i2c I2C adapter i2c-4 i2c rk3x-i2c I2C adapter i2c-7 i2c rk3x-i2c I2C adapter i2c-9 i2c i2c-7-mux (chan_id 0) I2C adapter i2c-10 i2c i2c-7-mux (chan_id 1) I2C adapter i2c-11 i2c i2c-7-mux (chan_id 2) I2C adapter i2c-12 i2c i2c-7-mux (chan_id 3) I2C adapter
Detect device address
For example I2C9
root@linaro-alip:~# i2cdetect -y 9