]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
i2c: xlp9xx: Check for Bus state before every transfer
authorGeorge Cherian <george.cherian@cavium.com>
Tue, 10 Apr 2018 19:29:00 +0000 (21:29 +0200)
committerStefan Bader <stefan.bader@canonical.com>
Thu, 19 Apr 2018 16:45:43 +0000 (18:45 +0200)
commitd39c3d9d6ba7e58b4b87a3653d0e60b5ded861f8
tree5a29d5255c3eeb0df64f77fa800f32767ad2b872
parent02281034a48b25adf6dc37f66b31dd2df9485de7
i2c: xlp9xx: Check for Bus state before every transfer

BugLink: https://bugs.launchpad.net/bugs/1762812
I2C bus enters the STOP condition after the DATA_DONE interrupt is raised.
Essentially the driver should be checking the bus state before sending
any transaction. In case a transaction is initiated while the
bus is busy, the prior transaction's stop condition is not achieved.
Add the check to make sure the bus is not busy before every transaction.

Signed-off-by: George Cherian <george.cherian@cavium.com>
Reviewed-by: Jan Glauber <jglauber@cavium.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
(cherry picked from commit d3898a78521cd383d287b3ed5683f914c48c3be9)
Signed-off-by: dann frazier <dann.frazier@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/i2c/busses/i2c-xlp9xx.c