Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v4.1 24 lines 1.3 kB view raw
1The I2C protocol knows about two kinds of device addresses: normal 7 bit 2addresses, and an extended set of 10 bit addresses. The sets of addresses 3do not intersect: the 7 bit address 0x10 is not the same as the 10 bit 4address 0x10 (though a single device could respond to both of them). 5 6I2C messages to and from 10-bit address devices have a different format. 7See the I2C specification for the details. 8 9The current 10 bit address support is minimal. It should work, however 10you can expect some problems along the way: 11* Not all bus drivers support 10-bit addresses. Some don't because the 12 hardware doesn't support them (SMBus doesn't require 10-bit address 13 support for example), some don't because nobody bothered adding the 14 code (or it's there but not working properly.) Software implementation 15 (i2c-algo-bit) is known to work. 16* Some optional features do not support 10-bit addresses. This is the 17 case of automatic detection and instantiation of devices by their, 18 drivers, for example. 19* Many user-space packages (for example i2c-tools) lack support for 20 10-bit addresses. 21 22Note that 10-bit address devices are still pretty rare, so the limitations 23listed above could stay for a long time, maybe even forever if nobody 24needs them to be fixed.