Re: [PATCH 1/1] gpio: aggregator: add gpio-aggregator DT compatible
From: Krzysztof Kozlowski
Date: Wed Feb 11 2026 - 02:04:50 EST
On Tue, Feb 10, 2026 at 09:42:12PM -0700, James Hilliard wrote:
> Add an OF match entry for gpio-aggregator so the forwarder can be
> instantiated without using the delay-specific compatible.
Why? What problems or real hardware are you solving here?
>
> Add a minimal DT schema for gpio-aggregator documenting compatible.
>
> Signed-off-by: James Hilliard <james.hilliard1@xxxxxxxxx>
> ---
> .../bindings/gpio/gpio-aggregator.yaml | 57 +++++++++++++++++++
Please run scripts/checkpatch.pl on the patches and fix reported
warnings. After that, run also 'scripts/checkpatch.pl --strict' on the
patches and (probably) fix more warnings. Some warnings can be ignored,
especially from --strict run, but the code here looks like it needs a
fix. Feel free to get in touch if the warning is not clear.
> drivers/gpio/gpio-aggregator.c | 3 +
> 2 files changed, 60 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/gpio/gpio-aggregator.yaml
>
> diff --git a/Documentation/devicetree/bindings/gpio/gpio-aggregator.yaml b/Documentation/devicetree/bindings/gpio/gpio-aggregator.yaml
> new file mode 100644
> index 000000000000..ec1d08f3db2c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/gpio/gpio-aggregator.yaml
> @@ -0,0 +1,57 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/gpio/gpio-aggregator.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: GPIO aggregator controller
> +
> +maintainers:
> + - Alexander Stein <linux@xxxxxxxxxxxxxxx>
> +
> +description: |
Do not need '|' unless you need to preserve formatting.
> + This binding describes a GPIO forwarder that exposes selected GPIO
Explain the hardware, not the binding. Drop "this binding ......"
> + lines as a virtual GPIO controller.
> +
> +properties:
> + compatible:
> + const: gpio-aggregator
> +
> + "#gpio-cells":
> + description: Specifies the line offset and GPIO flags.
> + const: 2
> +
> + gpios:
> + description: Array of GPIOs to aggregate
> + minItems: 1
> + maxItems: 32
> +
> + gpio-controller: true
> +
> + gpio-line-names:
> + minItems: 1
> + maxItems: 32
> +
> +required:
> + - compatible
> + - "#gpio-cells"
> + - gpio-controller
> + - gpios
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + gpio_agg: gpio-aggregator {
> + compatible = "gpio-aggregator";
> + #gpio-cells = <2>;
> + gpio-controller;
> + gpios = <&gpio0 3 GPIO_ACTIVE_LOW>,
> + <&gpio3 1 GPIO_ACTIVE_HIGH>;
> + };
> +
> + consumer {
> + enable-gpios = <&gpio_agg 0 GPIO_ACTIVE_LOW>;
> + };
Drop node, not relevant. Anyway, I do not see any point in referencing
"gpio_agg 0" instead of "gpio0 3" and your commit msg fails to explain
that.
Best regards,
Krzysztof