Re: [PATCH v4 07/10] arm64: select HAVE_SHARED_GPIOS for ARCH_QCOM

Bartosz Golaszewski
2025-11-26T14:54:25Z

On Wed, Nov 26, 2025 at 3:51 PM Jon Hunter <jonathanh@nvidia.com> wrote:
>
>
> On 26/11/2025 14:28, Bartosz Golaszewski wrote:
> > On Wed, Nov 26, 2025 at 3:24 PM Jon Hunter <jonathanh@nvidia.com> wrote:
> >>
> >> Hi Bartosz,
> >>
> >> On 12/11/2025 13:55, Bartosz Golaszewski wrote:
> >>> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> >>>
> >>> Some qualcomm platforms use shared GPIOs. Enable support for them by
> >>> selecting the Kconfig switch provided by GPIOLIB.
> >>>
> >>> Acked-by: Linus Walleij <linus.walleij@linaro.org>
> >>> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> >>> ---
> >>> arch/arm64/Kconfig.platforms | 1 +
> >>> 1 file changed, 1 insertion(+)
> >>>
> >>> diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
> >>> index 13173795c43d4f28e2d47acc700f80a165d44671..3dbff0261f0add0516d8cb3fd0f29e277af94f20 100644
> >>> --- a/arch/arm64/Kconfig.platforms
> >>> +++ b/arch/arm64/Kconfig.platforms
> >>> @@ -316,6 +316,7 @@ config ARCH_QCOM
> >>> select GPIOLIB
> >>> select PINCTRL
> >>> select HAVE_PWRCTRL if PCI
> >>> + select HAVE_SHARED_GPIOS
> >>> help
> >>> This enables support for the ARMv8 based Qualcomm chipsets.
> >>>
> >>
> >> I have noticed the following kernel warning on our Tegra platforms ...
> >>
> >> ERR KERN OF: /__symbols__: could not find phandle 794981747
> >>
> >> Bisect is pointing to this commit and reverting this does prevent it. I
> >> am not sure if anyone else has seen this?
> >>
> >
> > I assume it comes from drivers/of/base.c:1295 - could you please post
> > a stack trace of how you're getting there?
>
> Yes looks like it does and I see ...
>
> [ 0.123356] OF: /__symbols__: could not find phandle 794981747
> [ 0.123401] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.18.0-rc7-next-20251126-00002-g1cd98992c487-dirty #19 PREEMPT
> [ 0.123418] Hardware name: NVIDIA Jetson AGX Xavier Developer Kit (DT)
> [ 0.123447] Call trace:
> [ 0.123453] show_stack+0x18/0x24 (C)
> [ 0.123472] dump_stack_lvl+0x74/0x8c
> [ 0.123487] dump_stack+0x18/0x24
> [ 0.123518] of_phandle_iterator_next+0x18c/0x1c4
> [ 0.123536] of_count_phandle_with_args+0xa0/0xc8
> [ 0.123551] gpio_shared_of_traverse+0xb8/0x47c
> [ 0.123566] gpio_shared_of_traverse+0x158/0x47c
> [ 0.123578] gpio_shared_init+0x110/0x1f0
> [ 0.123595] do_one_initcall+0x7c/0x1c0
> [ 0.123607] kernel_init_freeable+0x204/0x2e0
> [ 0.123622] kernel_init+0x20/0x1d8
> [ 0.123637] ret_from_fork+0x10/0x20
>

Is the device-tree used here upstream? Can you enable DEBUG_GPIO in
Kconfig and post the entire kernel log on pastebin?

Bartosz