[GIT PULL] gpio fixes for v6.19-rc5

From: Bartosz Golaszewski

Date: Fri Jan 09 2026 - 08:55:39 EST


Linus,

Here's a set of fixes for the upcoming RC. There are several ordinary
driver fixes and a fix to a race between the registration of two chips
that causes a crash in GPIO core.

The bulk of the changed lines however, concerns the management of shared
GPIOs that landed in v6.19-rc1. Enabling it for ARCH_QCOM enabled it in
defconfig which effectively enabled it for all arm64 platforms and
exposed the code to quite a lot of testing (which is good, right? :)).
I received a number of bug reports, which I progressively fixed over the
course of last weeks. This explains the number of lines higher than what
I normally aim for at this stage.

Please consider pulling.

Thanks
Bartosz

The following changes since commit 8f0b4cce4481fb22653697cced8d0d04027cb1e8:

Linux 6.19-rc1 (2025-12-14 16:05:07 +1200)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git tags/gpio-fixes-for-v6.19-rc5

for you to fetch changes up to d578b31856cec31315f27b3ba97b212e4c6989b3:

gpio: shared: fix a false-positive sharing detection with reset-gpios (2026-01-09 09:56:46 +0100)

----------------------------------------------------------------
gpio fixes for v6.19-rc5

- balance superio enter/exit calls in error path in gpio-it87
- fix a race where we try to take the SRCU read lock of the GPIO device
before it's been initialized causing a NULL-pointer dereference
- fix handling of short-pulse interrupts in gpio-pca053x
- fix a reference leak in error path in gpio-mpsse
- mark the GPIO controller as sleeping (it calls sleeping functions) in
gpio-rockchip
- fix several issues in management of shared GPIOs

----------------------------------------------------------------
Abdun Nihaal (1):
gpio: mpsse: fix reference leak in gpio_mpsse_probe() error paths

Bartosz Golaszewski (10):
gpio: it87: balance superio enter/exit calls in error path
gpiolib: allow multiple lookup tables per consumer
gpio: shared: verify con_id when adding proxy lookup
gpio: shared: allow sharing a reset-gpios pin between reset-gpio and gpiolib
gpio: rockchip: mark the GPIO controller as sleeping
gpio: shared: assign the correct firmware node for reset-gpio use-case
gpio: shared: fix a race condition
gpio: shared: don't allocate the lookup table until we really need it
gpiolib: fix lookup table matching
gpio: shared: fix a false-positive sharing detection with reset-gpios

Ernest Van Hoecke (1):
gpio: pca953x: handle short interrupt pulses on PCAL devices

Paweł Narewski (1):
gpiolib: fix race condition for gdev->srcu

drivers/gpio/gpio-it87.c | 11 +-
drivers/gpio/gpio-mpsse.c | 12 +-
drivers/gpio/gpio-pca953x.c | 25 ++++-
drivers/gpio/gpio-rockchip.c | 1 +
drivers/gpio/gpiolib-shared.c | 249 ++++++++++++++++++++++++++++++------------
drivers/gpio/gpiolib-shared.h | 4 +-
drivers/gpio/gpiolib.c | 136 +++++++++++++----------
7 files changed, 300 insertions(+), 138 deletions(-)