Thread (71 messages) 71 messages, 19 authors, 2026-03-13

Re: [PATCH v4 00/10] gpio: improve support for shared GPIOs

From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2025-11-21 10:20:28
Also in: linux-arm-msm, linux-gpio, linux-hardening, linux-sound, lkml

On 21/11/2025 10:03, Bartosz Golaszewski wrote:
On Fri, Nov 21, 2025 at 1:28 AM Val Packett [off-list ref] wrote:
quoted
Hi,

On 11/12/25 10:55 AM, Bartosz Golaszewski wrote:
quoted
---
Bartosz Golaszewski (10):
       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
       ASoC: wsa881x: drop GPIOD_FLAGS_BIT_NONEXCLUSIVE flag from GPIO lookup
       ASoC: wsa883x: drop GPIOD_FLAGS_BIT_NONEXCLUSIVE flag from GPIO lookup
       regulator: make the subsystem aware of shared GPIOs
this seems to actually have caused a regression for me, audio does not
initialize anymore on hamoa due to EBUSY since upgrading
from next-20251114 to next-20251118 or next-20251120:
Thanks for the heads-up.
quoted
[   11.748781] platform
6800000.remoteproc:glink-edge:gpr:service@1:dais: Adding to iommu group 30
[   11.785864] wsa_macro 6aa0000.codec: using zero-initialized flat
cache, this may cause unexpected behavior
[   11.796964] reset-gpio reset-gpio.0: error -EBUSY: Could not get
reset gpios
[   11.796984] reset-gpio reset-gpio.0: probe with driver reset-gpio
failed with error -16
[   11.894662] reset-gpio reset-gpio.1: error -EBUSY: Could not get
reset gpios
[   11.894676] reset-gpio reset-gpio.1: probe with driver reset-gpio
failed with error -16
It seems like it's the reset-gpio driver, not shared GPIOLIB path?
This driver has never used the GPIOD_FLAGS_BIT_NONEXCLUSIVE flag.
NONEXCLUSIVE does not matter here. I think this is just broken code -
your patch 3 goes through allnodes for_each_property_of_node() and then
assumes it is shared GPIO, so probably this nicely breaks existing DTS
and reset-gpio. Well, it is not a shared GPIO, so all your assumptions
here are just wrong.

reset-gpio is already used on multiple Qualcomm and other SoC  platforms.

Best regards,
Krzysztof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help