summaryrefslogtreecommitdiff
path: root/drivers/gpio/gpio-tegra186.c
diff options
context:
space:
mode:
authorFrancesco Lavra <flavra@baylibre.com>2025-10-08 12:43:09 +0200
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>2025-10-16 16:28:55 +0200
commit9f0fa1801fe4503eb119a4523a59a494768fda5d (patch)
treee546826715774573a9ee51f90e8d30edc604583b /drivers/gpio/gpio-tegra186.c
parente88500247dc3267787abc837848b001c1237f692 (diff)
gpio: pca953x: enable latch only on edge-triggered inputs
The latched input feature of the pca953x GPIO controller is useful when an input is configured to trigger interrupts on rising or falling edges, because it allows retrieving which edge type caused a given interrupt even if the pin state changes again before the interrupt handler has a chance to run. But for level-triggered interrupts, reading the latched input state can cause an active interrupt condition to be missed, e.g. if an active-low signal (for which an IRQ_TYPE_LEVEL_LOW interrupt has been configured) triggers an interrupt when switching to the inactive state, but then becomes active again before the interrupt handler has a chance to run: in this case, if the interrupt handler reads the latched input state, it will wrongly assume that the interrupt is not pending. Fix the above issue by enabling the latch only on edge-triggered inputs, instead of all interrupt-enabled inputs. Signed-off-by: Francesco Lavra <flavra@baylibre.com> Reviewed-by: Ian Ray <ian.ray@gehealthcare.com> Reviewed-by: Martyn Welch <martyn.welch@collabora.com> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-tegra186.c')
0 files changed, 0 insertions, 0 deletions