Hi,

Same bus driver(+ or - algo driver) can be used for multiple device controllers if they are identical in architecture as well as in algorithm.

So, ID may decide the BASE register address for the device controllers within same bus driver.
i2c_register_board_info() will tell the bus driver that i2c chip is connected with which controller and accordingly bus driver will communicate with that controller.

So, two different i2c chip can be connected to same or different controller (and hence different SDA & SCL lines) but using same bus driver.

Your GPIO lines must be muxed with controller lines. Other wise you can use bitbanging driver also.

regards,
Tirtha
 

On Thu, Feb 17, 2011 at 1:36 PM, manikanta <manikanta4u@gmail.com> wrote:
i2c_register_board_info- first parameter defines the bus number
and this should match with the id for the device (which is resident
on the I2C bus) while registering in board initialization files.

AFAIK this bus number is basically an identifer to distinguish between
different I2C bus drivers.Am i right??

If yes then in our platform we have only one I2C bus driver then why do
we have to give different bus numbers??

Our devices are connected to different SDA and SCL lines(gpios basically) and 
for which we are using different bus numbers but we have common I2C driver.
So why different bus numbers???

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies