Hi all, I am learning how i2c is working and I read that, to write in an i2c register, I need to use the function "i2c_smbus_write_byte_data". I wanted to know how the message are handled by using this function. If I use this function to talk with 2 different i2d devices, how it will handle "message collision" ? should I have to add a kind of mutex on the access of the i2c bus ? Is it possible that the message destined for one device is sent to another one ? Or a "mix" of messages is impossible ? I have read that this function "i2c_smbus_write_byte_data" uses "i2c_smbus_xfer" which uses "i2c_lock_adapter". In this function, there is a mutex so I thought that it will handle it but it says "Get exclusive access to an I2C bus segment". What is exactly an I2C segment ? Is it the device we are talking about ? Or is it the use of the i2c bus ? I will certainly have to create an i2c driver and I would like to know if this "collision" handling (if it is handled) is done in old kernel (2.6.32) or is it handled only in new kernel versions ? If you have any documentation on how the i2c messages are handled in case of different devices uses, it will help me a lot ! I will search in the kernel documentation but there is many files about i2c. And if you know a good i2c driver that I can use as an example to design mine, it will be great ! Thank you in advance, -- Mylène JOSSERAND _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies