i2c: exynos5: fix arbitration lost handling
authorAndrzej Hajda <a.hajda@samsung.com>
Wed, 22 Feb 2017 11:04:34 +0000 (12:04 +0100)
committerWolfram Sang <wsa@the-dreams.de>
Thu, 23 Feb 2017 12:01:22 +0000 (13:01 +0100)
commit7999eecb7e5675c3c7c2981a3ba9be6fc8e2ee27
tree0a5e7525ac2dc8de763b273c8940918cac241f93
parentfd1c9c8568439198a66f42108a9b01854e25346e
i2c: exynos5: fix arbitration lost handling

In case of arbitration lost adequate interrupt sometimes is not signaled.
As a result transfer timeouts and is not retried, as it should. To avoid
such cases code is added to check transaction status in case of every
interrupt.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Tested-by: Andi Shyti <andi.shyti@samsung.com>
Reviewed-by: Andi Shyti <andi.shyti@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-exynos5.c