Re: [PATCH v2 2/2] gpio: aggregator: add gpio-aggregator DT compatible
From: Bartosz Golaszewski
Date: Wed Feb 11 2026 - 06:00:26 EST
On Wed, Feb 11, 2026 at 11:49 AM Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
>
> On 11/02/2026 11:38, Bartosz Golaszewski wrote:
> > On Wed, Feb 11, 2026 at 10:50 AM Geert Uytterhoeven
> > <geert@xxxxxxxxxxxxxx> wrote:
> >>
> >>>>
> >>>> 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.
> >>
> >> This is not a pure virtual device, but for use with actual hardware.
> >>
> >> Nacked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> >>
> >
> > Well, it is a virtual device in that there's no actual "aggregator"
> > device on the board. It virtually aggregates GPIOs into a separate
> > chip for user's convenience. While there's no such device as a
> > gpio-aggregator - and so we must not put it into bindings nor into
> > mainline devicetree sources - having a compatible matching in the
> > driver is perfectly fine IMO. Just like gpio-sim.
>
> I already wrote, you cannot have undocumented compatible. There are even
> explicit checks for this - in schema and checkpatch - so with your
> approach you accept known warnings. Really, no, and fact we need to keep
> discussing it:
>
> Nacked-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxxxxx>
>
> Best regards,
> Krzysztof
Krzysztof disciplined me in private and promised the beatings will
continue until my understanding improves. I retract my statement, this
is of course wrong and NAKed.
Bartosz