From 35baff672f80afe569905e3873d961e1ed2d64a1 Mon Sep 17 00:00:00 2001 From: Wolfram Sang Date: Mon, 28 Sep 2020 13:06:47 +0200 Subject: [PATCH] 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 Signed-off-by: Wolfram Sang --- Documentation/i2c/slave-testunit-backend.rst | 13 ++++++++----- 1 file 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 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