OSDN Git Service

i2c: xlp9xx: Handle I2C_M_RECV_LEN in msg->flags
authorKamlakant Patel <kamlakant.patel@cavium.com>
Tue, 10 Oct 2017 06:27:56 +0000 (11:57 +0530)
committerWolfram Sang <wsa@the-dreams.de>
Tue, 17 Oct 2017 21:53:28 +0000 (23:53 +0200)
commit5515ae112172e20667f02b16f45fbf992923dcb0
tree8f55504663432f580091f434941c3a3c268671ca
parentc347b8fc22b21899154cc153a4951aaf226b4e1a
i2c: xlp9xx: Handle I2C_M_RECV_LEN in msg->flags

The driver needs to handle the flag I2C_M_RECV_LEN during receive to
support SMBus emulation.

Update receive logic to handle the case where the length is received
as the first byte of a transaction.

Also update the code to handle I2C_CLIENT_PEC, which is set when the
client sends a packet error checking code byte.

Signed-off-by: Jayachandran C <jnair@caviumnetworks.com>
Signed-off-by: Kamlakant Patel <kamlakant.patel@cavium.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-xlp9xx.c