]> 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:30:54 +0000 (10:30 +0100)
commit906fb74685d9aa9ee9b47fc96ac7623125126565
tree7ee5f24fbb2386baea1e0c000d582b4c1ced3b5c
parent6237331361711810d8f2e3fbfe2f7a6f9548f5e0
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