[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMRc=Md7+SWMpF20y-+-+Hn7ymkzuMeTxT2EsE3Cnb=B6YUG0w@mail.gmail.com>
Date: Tue, 20 Jan 2026 12:16:28 +0000
From: Bartosz Golaszewski <brgl@...nel.org>
To: Khristine Andreea Barbulescu <khristineandreea.barbulescu@....nxp.com>
Cc: Alberto Ruiz <aruizrui@...hat.com>, Christophe Lizzi <clizzi@...hat.com>, devicetree@...r.kernel.org,
Enric Balletbo <eballetb@...hat.com>, Eric Chanudet <echanude@...hat.com>, imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org, NXP S32 Linux Team <s32@....com>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
"Vincent Guittot devicetree @ vger . kernel . org" <vincent.guittot@...aro.org>, Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <brgl@...ev.pl>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Chester Lin <chester62515@...il.com>, Matthias Brugger <mbrugger@...e.com>,
Ghennadi Procopciuc <ghennadi.procopciuc@....com>, Larisa Grigore <larisa.grigore@....com>,
Lee Jones <lee@...nel.org>, Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>, Fabio Estevam <festevam@...il.com>,
Dong Aisheng <aisheng.dong@....com>, Jacky Bai <ping.bai@....com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>, "Rafael J. Wysocki" <rafael@...nel.org>
Subject: Re: [PATCH v8 07/10] pinctrl: s32cc: skip syscon child nodes when
parsing funcs and groups
On Tue, 20 Jan 2026 12:59:19 +0100, Khristine Andreea Barbulescu
<khristineandreea.barbulescu@....nxp.com> said:
> The SIUL2 node contains child nodes for syscon
> instances (SIUL2_0 and SIUL2_1) to expose register
> ranges for SoC information. These nodes are not
> part of the pinctrl configuration and should not
> be treated as pinctrl functions or groups.
>
> Signed-off-by: Khristine Andreea Barbulescu <khristineandreea.barbulescu@....nxp.com>
> ---
> drivers/pinctrl/nxp/pinctrl-s32cc.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/pinctrl/nxp/pinctrl-s32cc.c b/drivers/pinctrl/nxp/pinctrl-s32cc.c
> index cdd3a1cd4fe5..50d5a01107eb 100644
> --- a/drivers/pinctrl/nxp/pinctrl-s32cc.c
> +++ b/drivers/pinctrl/nxp/pinctrl-s32cc.c
> @@ -2,7 +2,7 @@
> /*
> * Core driver for the S32 CC (Common Chassis) pin controller
> *
> - * Copyright 2017-2022,2024-2025 NXP
> + * Copyright 2017-2022,2024-2025-2026 NXP
> * Copyright (C) 2022 SUSE LLC
> * Copyright 2015-2016 Freescale Semiconductor, Inc.
> */
> @@ -832,6 +832,9 @@ static int s32_pinctrl_parse_functions(struct device_node *np,
>
> dev_dbg(info->dev, "parse function(%u): %pOFn\n", index, np);
>
> + if (of_device_is_compatible(np, "syscon"))
> + return 0;
> +
> func = &info->functions[index];
>
> /* Initialise function */
> @@ -941,7 +944,8 @@ static int s32_pinctrl_probe_dt(struct platform_device *pdev,
> return -ENODEV;
>
> for_each_child_of_node_scoped(np, child)
> - ++nfuncs;
> + if (!of_device_is_compatible(child, "syscon"))
> + ++nfuncs;
> if (nfuncs <= 0)
> return dev_err_probe(&pdev->dev, -EINVAL,
> "No functions defined\n");
> @@ -962,6 +966,9 @@ static int s32_pinctrl_probe_dt(struct platform_device *pdev,
> return -ENOMEM;
>
> for_each_child_of_node_scoped(np, child) {
> + if (of_device_is_compatible(child, "syscon"))
> + continue;
> +
> ret = s32_pinctrl_parse_functions(child, info, i++);
> if (ret)
> return ret;
> --
> 2.50.1
>
>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@....qualcomm.com>
Powered by blists - more mailing lists