Immutable branch between the GPIO, ASoC and regulator trees for v6.19-rc1
Subsystems (2)
From: Bartosz Golaszewski <[email protected]>
Hi Mark!
Please pull the following changes into the ASoC and regulator trees as a prerequisite to applying patches 8-10 for v6.19-rc1 from the series improving support for shared GPIOs[1].
Please note that there's a small conflict between v6.18-rc1 and my gpio/for-next branch where gpio_chip_hwgpio() has been renamed to gpiod_hwgpio().
In linux-next it can be fixed like this:
drivers/gpio/gpiolib-shared.c +1 -1
@@ -462,7 +462,7 @@ static struct gpio_shared_entry *gpiod_shared_find(struct auxiliary_device *adev entry->shared_desc = shared_desc;pr_debug ("Device %s acquired a reference to the shared GPIO %u owned by %s\n" , -dev_name (&adev->dev),gpio_chip_hwgpio (shared_desc->desc), +dev_name (&adev->dev),gpiod_hwgpio (shared_desc->desc),gpio_device_get_label (shared_desc->desc->gdev));
Thanks!
Bartosz
[1] https://lore.kernel.org/all/[email protected]/
The following changes since commit 3a8660878839faadb4f1a6dd72c3179c1df56787:
Linux 6.18-rc1 (2025-10-12 13:42:36 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git tags/gpio/shared-gpios-for-v6.19-rc1
for you to fetch changes up to e511d484cbe44fe48a1b9f621f6a947c72503f9e:
arm64: select HAVE_SHARED_GPIOS for ARCH_QCOM (2025-11-17 10:16:51 +0100)
----------------------------------------------------------------
Immutable branch between the GPIO, ASoC and regulator trees for v6.19-rc1
Add better support for GPIOs shared by multiple consumers.
----------------------------------------------------------------
Bartosz Golaszewski (7):
string: provide strends()
gpiolib: define GPIOD_FLAG_SHARED
gpiolib: implement low-level, shared GPIO support
gpio: shared-proxy: implement the shared GPIO proxy driver
gpiolib: support shared GPIOs in core subsystem code
gpio: provide gpiod_is_shared()
arm64: select HAVE_SHARED_GPIOS for ARCH_QCOM
arch/arm64/Kconfig.platforms | 1 + drivers/gpio/Kconfig | 17 ++ drivers/gpio/Makefile | 2 + drivers/gpio/gpio-shared-proxy.c | 333 +++++++++++++++++++++++ drivers/gpio/gpiolib-shared.c | 558 +++++++++++++++++++++++++++++++++++++++ drivers/gpio/gpiolib-shared.h | 71 +++++ drivers/gpio/gpiolib.c | 70 ++++- drivers/gpio/gpiolib.h | 2 + include/linux/gpio/consumer.h | 9 + include/linux/string.h | 18 ++ lib/tests/string_kunit.c | 13 + 11 files changed, 1085 insertions(+), 9 deletions(-) create mode 100644 drivers/gpio/gpio-shared-proxy.c create mode 100644 drivers/gpio/gpiolib-shared.c create mode 100644 drivers/gpio/gpiolib-shared.h