|
1 | 1 | ==============================
|
2 |
| -Linux I2C slave eeprom backend |
| 2 | +Linux I2C slave EEPROM backend |
3 | 3 | ==============================
|
4 | 4 |
|
5 |
| -by Wolfram Sang < [email protected]> in 2014- 15 |
| 5 | +by Wolfram Sang < [email protected]> in 2014- 20 |
6 | 6 |
|
7 |
| -This is a proof-of-concept backend which acts like an EEPROM on the connected |
8 |
| -I2C bus. The memory contents can be modified from userspace via this file |
9 |
| -located in sysfs:: |
| 7 | +This backend simulates an EEPROM on the connected I2C bus. Its memory contents |
| 8 | +can be accessed from userspace via this file located in sysfs:: |
10 | 9 |
|
11 | 10 | /sys/bus/i2c/devices/<device-directory>/slave-eeprom
|
12 | 11 |
|
| 12 | +The following types are available: 24c02, 24c32, 24c64, and 24c512. Read-only |
| 13 | +variants are also supported. The name needed for instantiating has the form |
| 14 | +'slave-<type>[ro]'. Examples follow: |
| 15 | + |
| 16 | +24c02, read/write, address 0x64: |
| 17 | + # echo slave-24c02 0x1064 > /sys/bus/i2c/devices/i2c-1/new_device |
| 18 | + |
| 19 | +24c512, read-only, address 0x42: |
| 20 | + # echo slave-24c512ro 0x1042 > /sys/bus/i2c/devices/i2c-1/new_device |
| 21 | + |
| 22 | +You can also preload data during boot if a device-property named |
| 23 | +'firmware-name' contains a valid filename (DT or ACPI only). |
| 24 | + |
13 | 25 | As of 2015, Linux doesn't support poll on binary sysfs files, so there is no
|
14 | 26 | notification when another master changed the content.
|
0 commit comments