]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
i2c: microchip-core: actually use repeated sends
authorConor Dooley <conor.dooley@microchip.com>
Wed, 18 Dec 2024 12:07:40 +0000 (12:07 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Jan 2025 09:32:10 +0000 (10:32 +0100)
commit3f66c65f65251b07285a37ca3edf73a7fd1a9ebc
tree7ce68d937cb4a055f8e8b870a2970dc27e41a624
parent80120bb4eef7848d5aa3b1a0cd88367cd05fbe03
i2c: microchip-core: actually use repeated sends

commit 9a8f9320d67b27ddd7f1ee88d91820197a0e908f upstream.

At present, where repeated sends are intended to be used, the
i2c-microchip-core driver sends a stop followed by a start. Lots of i2c
devices must not malfunction in the face of this behaviour, because the
driver has operated like this for years! Try to keep track of whether or
not a repeated send is required, and suppress sending a stop in these
cases.

CC: stable@vger.kernel.org
Fixes: 64a6f1c4987e ("i2c: add support for microchip fpga i2c controllers")
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20241218-football-composure-e56df2461461@spud
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/i2c/busses/i2c-microchip-corei2c.c