aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Documentation/i2c
diff options
context:
space:
mode:
authorWolfram Sang <wsa+renesas@sang-engineering.com>2020-09-28 13:06:47 +0200
committerWolfram Sang <wsa@kernel.org>2020-10-05 22:57:39 +0200
commit35baff672f80afe569905e3873d961e1ed2d64a1 (patch)
treedfbbe6eadebf673e8a4c552c5088ea1400294593 /Documentation/i2c
parenti2c: busses: replace spin_lock_irqsave by spin_lock in hard IRQ (diff)
downloadwireguard-linux-35baff672f80afe569905e3873d961e1ed2d64a1.tar.xz
wireguard-linux-35baff672f80afe569905e3873d961e1ed2d64a1.zip
i2c: testunit: improve documentation
Mention that new CMDs will be NACKed while the old one is still on-going, that the I2C address parameter of READ_BYTES is 7 bit only, and reword one paragraph to be more precise. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Wolfram Sang <wsa@kernel.org>
Diffstat (limited to 'Documentation/i2c')
-rw-r--r--Documentation/i2c/slave-testunit-backend.rst13
1 files changed, 8 insertions, 5 deletions
diff --git a/Documentation/i2c/slave-testunit-backend.rst b/Documentation/i2c/slave-testunit-backend.rst
index f537c62a8a83..2c38e64f0bac 100644
--- a/Documentation/i2c/slave-testunit-backend.rst
+++ b/Documentation/i2c/slave-testunit-backend.rst
@@ -20,10 +20,10 @@ Instantiating the device is regular. Example for bus 0, address 0x30:
# echo "slave-testunit 0x1030" > /sys/bus/i2c/devices/i2c-0/new_device
-After that, you will have a write-only device listening. Reads will return an
-8-bit version number. The device consists of 4 8-bit registers and all must be
-written to start a testcase, i.e. you must always write 4 bytes to the device.
-The registers are:
+After that, you will have a write-only device listening. Reads will just return
+an 8-bit version number of the testunit. When writing, the device consists of 4
+8-bit registers and all must be written to start a testcase, i.e. you must
+always write 4 bytes to the device. The registers are:
0x00 CMD - which test to trigger
0x01 DATAL - configuration byte 1 for the test
@@ -35,6 +35,9 @@ Using 'i2cset' from the i2c-tools package, the generic command looks like:
# i2cset -y <bus_num> <testunit_address> <CMD> <DATAL> <DATAH> <DELAY> i
DELAY is a generic parameter which will delay the execution of the test in CMD.
+While a command is running (including the delay), new commands will not be
+acknowledged. You need to wait until the old one is completed.
+
The commands are described in the following section. An invalid command will
result in the transfer not being acknowledged.
@@ -44,7 +47,7 @@ Commands
0x00 NOOP (reserved for future use)
0x01 READ_BYTES (also needs master mode)
- DATAL - address to read data from
+ DATAL - address to read data from (lower 7 bits, highest bit currently unused)
DATAH - number of bytes to read
This is useful to test if your bus master driver is handling multi-master