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

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

From: Jon Hunter <jonathanh@nvidia.com>
Date: 2025-11-26 14:56:06
Also in: linux-arm-msm, linux-gpio, linux-hardening, linux-sound, linux-tegra, lkml

On 26/11/2025 14:54, Bartosz Golaszewski wrote:
On Wed, Nov 26, 2025 at 3:51 PM Jon Hunter [off-list ref] wrote:
quoted

On 26/11/2025 14:28, Bartosz Golaszewski wrote:
quoted
On Wed, Nov 26, 2025 at 3:24 PM Jon Hunter [off-list ref] wrote:
quoted
Hi Bartosz,

On 12/11/2025 13:55, Bartosz Golaszewski wrote:
quoted
From: Bartosz Golaszewski <redacted>

Some qualcomm platforms use shared GPIOs. Enable support for them by
selecting the Kconfig switch provided by GPIOLIB.

Acked-by: Linus Walleij <redacted>
Signed-off-by: Bartosz Golaszewski <redacted>
---
    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?
Yes this is the upstream device-tree in 
arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts. OK I will get the 
entire log for review.

Jon

-- 
nvpublic

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