Skip to content
Commit 33e7f38e authored by Mark Featherston's avatar Mark Featherston Committed by Greg Kroah-Hartman
Browse files

gpio: ts4900: Do not set DAT and OE together

[ Upstream commit 03fe0035 ]

This works around an issue with the hardware where both OE and
DAT are exposed in the same register. If both are updated
simultaneously, the harware makes no guarantees that OE or DAT
will actually change in any given order and may result in a
glitch of a few ns on a GPIO pin when changing direction and value
in a single write.

Setting direction to input now only affects OE bit. Setting
direction to output updates DAT first, then OE.

Fixes: 9c668632

 ("gpio: add Technologic I2C-FPGA gpio support")
Signed-off-by: default avatarMark Featherston <mark@embeddedTS.com>
Signed-off-by: default avatarKris Bahnsen <kris@embeddedTS.com>
Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent b1db33d4
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment