Re: [PATCH 3/6] dt-bindings: serdev: ngsm: Add binding for GNSS child node

From: Rob Herring
Date: Wed May 27 2020 - 15:28:24 EST


On Tue, May 12, 2020 at 02:47:10PM -0700, Tony Lindgren wrote:
> For motorola modem case, we may have a GNSS device on channel 4.
> Let's add that to the binding and example.
>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
> ---
> .../devicetree/bindings/serdev/serdev-ngsm.yaml | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/serdev/serdev-ngsm.yaml b/Documentation/devicetree/bindings/serdev/serdev-ngsm.yaml
> --- a/Documentation/devicetree/bindings/serdev/serdev-ngsm.yaml
> +++ b/Documentation/devicetree/bindings/serdev/serdev-ngsm.yaml
> @@ -42,6 +42,10 @@ allOf:
> description: Name of the USB PHY
> const: usb
>
> + compatible:
> + description: GNSS receiver
> + const: motorola,mapphone-mdm6600-gnss

I'm not sure how this isn't failing on the example because it is wrong.

You're saying this compatible belongs at the same level as
phys/phy-names, but that would be the parent which already has a
compatible. You have to define a child node property (gnss@4) and have
'compatible' under it. At that point, this schema becomes very much
Motorola specific.

> +
> required:
> - phys
> - phy-names
> @@ -61,4 +65,9 @@ examples:
> phy-names = "usb";
> #address-cells = <1>;
> #size-cells = <0>;
> +
> + gnss@4 {
> + compatible = "motorola,mapphone-mdm6600-gnss";
> + reg = <4>;
> + };
> };
> --
> 2.26.2