[PATCH v3 03/10] gpiolib: implement low-level, shared GPIO support
Linus Walleij
linus.walleij at linaro.org
Tue Nov 11 02:41:17 PST 2025
On Wed, Oct 29, 2025 at 12:21 PM Bartosz Golaszewski <brgl at bgdev.pl> wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
>
> This module scans the device tree (for now only OF nodes are supported
> but care is taken to make other fwnode implementations easy to
> integrate) and determines which GPIO lines are shared by multiple users.
> It stores that information in memory. When the GPIO chip exposing shared
> lines is registered, the shared GPIO descriptors it exposes are marked
> as shared and virtual "proxy" devices that mediate access to the shared
> lines are created. When a consumer of a shared GPIO looks it up, its
> fwnode lookup is redirected to a just-in-time machine lookup that points
> to this proxy device.
>
> This code can be compiled out on platforms which don't use shared GPIOs.
>
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
The concept is sound and we have to begin somewhere, optimizations
for code reuse and cleanups can be done in-tree.
So:
Reviewed-by: Linus Walleij <linus.walleij at linaro.org>
Yours,
Linus Walleij
More information about the linux-arm-kernel
mailing list