i2c: support 10 bit and slave addresses in sysfs 'new_device'
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Mon, 27 Jul 2015 12:03:38 +0000 (14:03 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 24 Aug 2015 12:05:15 +0000 (14:05 +0200)
We now have seperate address spaces for 10 bit and we-are-slave clients.
Update the sysfs device instantiation method to support these types by
accepting the address offsets that are assigned to the extra address
spaces. Update the documentation, too.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Documentation/i2c/slave-interface
Documentation/i2c/ten-bit-addresses
drivers/i2c/i2c-core.c

index 2dee4e2..61ed05c 100644 (file)
@@ -31,10 +31,13 @@ User manual
 ===========
 
 I2C slave backends behave like standard I2C clients. So, you can instantiate
-them as described in the document 'instantiating-devices'. A quick example for
-instantiating the slave-eeprom driver from userspace at address 0x64 on bus 1:
+them as described in the document 'instantiating-devices'. The only difference
+is that i2c slave backends have their own address space. So, you have to add
+0x1000 to the address you would originally request. An example for
+instantiating the slave-eeprom driver from userspace at the 7 bit address 0x64
+on bus 1:
 
-  # echo slave-24c02 0x64 > /sys/bus/i2c/devices/i2c-1/new_device
+  # echo slave-24c02 0x1064 > /sys/bus/i2c/devices/i2c-1/new_device
 
 Each backend should come with separate documentation to describe its specific
 behaviour and setup.
Simple merge
Simple merge