[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMRc=MfgoKmsNAmn3rO2jDL-ZArMX2Jh-n4SnV6rpzRY3KSwuA@mail.gmail.com>
Date: Wed, 11 Feb 2026 10:47:42 +0100
From: Bartosz Golaszewski <brgl@...nel.org>
To: James Hilliard <james.hilliard1@...il.com>
Cc: linux-gpio@...r.kernel.org, Geert Uytterhoeven <geert+renesas@...der.be>,
Linus Walleij <linusw@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Alexander Stein <linux@...tq-group.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 2/2] gpio: aggregator: add gpio-aggregator DT compatible
On Wed, Feb 11, 2026 at 9:14 AM James Hilliard
<james.hilliard1@...il.com> wrote:
>
> Add an OF match entry for "gpio-aggregator" to support plain GPIO
> forwarding from devicetree without delay semantics.
>
> This allows exposing selected lines as a logical GPIO controller with
> stable aggregated offsets, so consumers can reference forwarded lines
> instead of physical controller offsets. It also allows creating bundled
> groups of named lines that can be exposed to userspace as a convenient
> virtual gpiochip interface. Using "gpio-delay" for this case is not
> suitable because it enables delay features and requires 3-cell GPIO
> specifiers.
>
> Signed-off-by: James Hilliard <james.hilliard1@...il.com>
> ---
> Changes v1 -> v2:
> - Split DT schema into a separate patch
> (suggested by Krzysztof Kozlowski)
> - Expand commit message rationale and use-case explanation
> (suggested by Krzysztof Kozlowski)
> - Clarify userspace use case with bundled named line groups
> ---
> drivers/gpio/gpio-aggregator.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpio/gpio-aggregator.c b/drivers/gpio/gpio-aggregator.c
> index 416f265d09d0..a09752fc5fe2 100644
> --- a/drivers/gpio/gpio-aggregator.c
> +++ b/drivers/gpio/gpio-aggregator.c
> @@ -1635,6 +1635,9 @@ static int gpio_aggregator_probe(struct platform_device *pdev)
> }
>
> static const struct of_device_id gpio_aggregator_dt_ids[] = {
> + {
> + .compatible = "gpio-aggregator",
> + },
> {
> .compatible = "gpio-delay",
> .data = (void *)FWD_FEATURE_DELAY,
> --
> 2.43.0
>
Regardless of the DT bindings - this change is perfectly fine. We do
that for other "virtual" devices like gpio-sim, gpio-virtuser, etc. I
would just ask you to document it under
Documentation/admin-guide/gpio/gpio-aggregator.rst.
Bartosz
Powered by blists - more mailing lists