i2c: bcm2835: Avoid clock stretching timeouts
authorEric Anholt <eric@anholt.net>
Fri, 23 Feb 2018 21:42:31 +0000 (22:42 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 8 Mar 2022 18:09:29 +0000 (19:09 +0100)
commit11956c6eeb5a29cdb0747fca6f0b8fb997a8aef2
treecc305ac8ff909e015b7ff99554d696b7194d45f5
parent13f0ea8d11934a017f5c353fa049a09de3c37ec0
i2c: bcm2835: Avoid clock stretching timeouts

[ Upstream commit 9495b9b31abe525ebd93da58de2c88b9f66d3a0e ]

The CLKT register contains at poweron 0x40, which at our typical 100kHz
bus rate means .64ms. But there is no specified limit to how long devices
should be able to stretch the clocks, so just disable the timeout. We
still have a timeout wrapping the entire transfer.

Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
BugLink: https://github.com/raspberrypi/linux/issues/3064
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/i2c/busses/i2c-bcm2835.c