Re: [PATCH] dt-bindings: greybus: Document google,arche-platform

From: Soham Kute

Date: Sun Mar 01 2026 - 05:36:05 EST


Subject: Re: [PATCH] dt-bindings: greybus: Document google,arche-platform

Hi Krzysztof, Rob,

Apologies for the noise. I am a kernel newcomer and clearly jumped
ahead of myself here. I wrote this binding based on reading the driver
code rather than properly understanding the hardware first. That was
the wrong approach.

I've noted all your points, the compatible string, generic node names,
standard properties, and most importantly that bindings must describe
hardware not drivers.

Sorry again for the premature submission.

Soham

On Sun, Mar 1, 2026 at 3:36 PM Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
>
> On 01/03/2026 06:03, Soham Kute wrote:
> > Document the Google Arche platform which enables the Unipro
> > link between the application processor and the SVC in a
> > Greybus-based system.
> >
> > Signed-off-by: Soham Kute <officialsohamkute@xxxxxxxxx>
> > ---
> > .../greybus/google,arche-platform.yaml | 71 +++++++++++++++++++
> > MAINTAINERS | 1 +
> > 2 files changed, 72 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/greybus/google,arche-platform.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/greybus/google,arche-platform.yaml b/Documentation/devicetree/bindings/greybus/google,arche-platform.yaml
> > new file mode 100644
> > index 000000000000..6e176efc264a
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/greybus/google,arche-platform.yaml
> > @@ -0,0 +1,71 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/greybus/google,arche-platform.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Google Arche Platform
> > +
> > +maintainers:
> > + - Vaibhav Hiremath <hvaibhav.linux@xxxxxxxxx>
> > +
> > +description:
> > + The Arche platform driver enables the Unipro link between the
>
> You need to describe hardware, not drivers.
>
> This wasn't tested, so limited review.
>
> > + application processor and the SVC (Supervisory Controller) in
> > + a Greybus-based system.
> > +
> > +properties:
> > + compatible:
> > + const: google,arche-platform
>
> Your description is insufficient. Is this SoC? Is this device?
> Compatible is way too generic and "platform" is not correct in the
> compatible. Everything can be a platform.
>
> > +
> > + svc,reset-gpios:
>
> No, use standard properties.
>
> There is no such company as svc.
>
> > + description: GPIO used to reset the SVC
> > + maxItems: 1
> > +
> > + svc,sysboot-gpios:
> > + description: GPIO used for SVC sysboot signal
> > + maxItems: 1
> > +
> > + svc,refclk-req-gpios:
> > + description: GPIO used to request the SVC reference clock
> > + maxItems: 1
> > +
> > + svc,wake-detect-gpios:
> > + description: Bidirectional GPIO for wake/detect signal between AP and SVC
> > + maxItems: 1
> > +
> > + clocks:
> > + description: SVC reference clock
>
> What is SVC?
>
> > + maxItems: 1
> > +
> > + clock-names:
> > + items:
> > + - const: svc_ref_clk
>
> Drop names
>
> > +
> > + svc,reset-active-high:
> > + description: Present if the SVC reset GPIO is active high
> > + type: boolean
> > +
> > +additionalProperties: false
> > +
> > +required:
> > + - compatible
> > + - svc,reset-gpios
> > + - svc,sysboot-gpios
> > + - svc,refclk-req-gpios
> > + - svc,wake-detect-gpios
> > + - clocks
> > + - clock-names
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/gpio/gpio.h>
> > + arche-platform {
>
> Again, what is arche-platform?
>
> Node names should be generic. See also an explanation and list of
> examples (not exhaustive) in DT specification:
> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> If you cannot find a name matching your device, please check in kernel
> sources for similar cases or you can grow the spec (via pull request to
> DT spec repo).
>
> > + compatible = "google,arche-platform";
> > + svc,reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
> > + svc,sysboot-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
> > + svc,refclk-req-gpios = <&gpio 2 GPIO_ACTIVE_HIGH>;
> > + svc,wake-detect-gpios = <&gpio 3 GPIO_ACTIVE_HIGH>;
> > + clocks = <&svc_ref_clk>;
> > + clock-names = "svc_ref_clk";
> > + };
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index e08767323763..46cb6825f4d6 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -10886,6 +10886,7 @@ S: Maintained
> > F: drivers/staging/greybus/arche-apb-ctrl.c
> > F: drivers/staging/greybus/arche-platform.c
> > F: drivers/staging/greybus/arche_platform.h
> > +F: Documentation/devicetree/bindings/greybus/google,arche-platform.yaml
>
> Don't send bindings to match staging code. This is not the correct
> process. You must come with proper bindings for hardware, following
> standard review process like there was nothing in the staging. It's
> second bindings this week, is this some sort of GSoC again without any
> supervision?
>
>
> Best regards,
> Krzysztof