[added linuxppc-dev for a wider audience]

Felix Radensky wrote:
I run linux-2.6.26 on custom 460EX based board.
This platform has PCA9548 I2C mux on I2C bus 0.
I was wondering how can I describe the mux itself
and devices behind it (e.g RTC and temperature sensors)
in the device tree.

Describe it as a node that is both an i2c client and an i2c controller.

The Sun i2c binding says that i2c devices should have two reg cells, the first being the bus number within the controller, and the second being a shifted-left-by-one i2c bus address (as opposed to the one-cell non-shifted address we currently use, because the Sun binding wasn't known to us at the time).

We could extend of_register_i2c_devices to understand two-cell addresses, and call it once for each sub-bus with the bus number as a parameter.

If this is impossible at the moment, what other means
exist to work with devices behind the mux ? I have
found the pca954x patch and related virtual i2c patch
and was able to integrate them intro my kernel.

You'll have to update it to be a new-style i2c device, unless there's a newer version floating around that what a quick google search turned up.

-Scott

_______________________________________________
Linuxppc-embedded mailing list
Linuxppc-embedded@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded

Reply via email to