diff mbox series

[v2] i2c: slave-eeprom: update documentation

Message ID 20200628185426.5733-1-wsa+renesas@sang-engineering.com
State Accepted
Commit 59d3d6042d432f36e206127de0dab7f9319762d5
Headers show
Series [v2] i2c: slave-eeprom: update documentation | expand

Commit Message

Wolfram Sang June 28, 2020, 6:54 p.m. UTC
Add more details which have either been missing ever since or describe
recent additions.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
---

Change since v1: add 'help' keyword to the Kconfig explanation

 Documentation/i2c/slave-eeprom-backend.rst | 22 +++++++++++++++++-----
 drivers/i2c/Kconfig                        |  4 ++++
 2 files changed, 21 insertions(+), 5 deletions(-)

Comments

Wolfram Sang July 4, 2020, 6:17 a.m. UTC | #1
On Sun, Jun 28, 2020 at 08:54:26PM +0200, Wolfram Sang wrote:
> Add more details which have either been missing ever since or describe

> recent additions.

> 

> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>


Applied to for-current, thanks!
diff mbox series

Patch

diff --git a/Documentation/i2c/slave-eeprom-backend.rst b/Documentation/i2c/slave-eeprom-backend.rst
index 0b8cd83698e0..38d951f10302 100644
--- a/Documentation/i2c/slave-eeprom-backend.rst
+++ b/Documentation/i2c/slave-eeprom-backend.rst
@@ -1,14 +1,26 @@ 
 ==============================
-Linux I2C slave eeprom backend
+Linux I2C slave EEPROM backend
 ==============================
 
-by Wolfram Sang <wsa@sang-engineering.com> in 2014-15
+by Wolfram Sang <wsa@sang-engineering.com> in 2014-20
 
-This is a proof-of-concept backend which acts like an EEPROM on the connected
-I2C bus. The memory contents can be modified from userspace via this file
-located in sysfs::
+This backend simulates an EEPROM on the connected I2C bus. Its memory contents
+can be accessed from userspace via this file located in sysfs::
 
 	/sys/bus/i2c/devices/<device-directory>/slave-eeprom
 
+The following types are available: 24c02, 24c32, 24c64, and 24c512. Read-only
+variants are also supported. The name needed for instantiating has the form
+'slave-<type>[ro]'. Examples follow:
+
+24c02, read/write, address 0x64:
+  # echo slave-24c02 0x1064 > /sys/bus/i2c/devices/i2c-1/new_device
+
+24c512, read-only, address 0x42:
+  # echo slave-24c512ro 0x1042 > /sys/bus/i2c/devices/i2c-1/new_device
+
+You can also preload data during boot if a device-property named
+'firmware-name' contains a valid filename (DT or ACPI only).
+
 As of 2015, Linux doesn't support poll on binary sysfs files, so there is no
 notification when another master changed the content.
diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig
index ef39c83aaf33..dbcbb8a6024e 100644
--- a/drivers/i2c/Kconfig
+++ b/drivers/i2c/Kconfig
@@ -119,6 +119,10 @@  if I2C_SLAVE
 config I2C_SLAVE_EEPROM
 	tristate "I2C eeprom slave driver"
 
+	help
+	  This backend makes Linux behave like an I2C EEPROM. Please read
+	  Documentation/i2c/slave-eeprom-backend.rst for further details.
+
 endif
 
 config I2C_DEBUG_CORE