[PATCH v2 1/4] dt-bindings: clock: si5351: convert to yaml

Alvin Šipraga ALSI at bang-olufsen.dk
Wed Oct 4 14:39:57 PDT 2023


On Wed, Oct 04, 2023 at 09:39:37AM -0500, Rob Herring wrote:
> > +      silabs,multisynth-source:
> > +        $ref: /schemas/types.yaml#/definitions/uint32
> > +        enum: [ 0, 1 ]
> > +        description: |
> 
> Don't need '|' if no formatting to preserve.

I thought the line would be too long otherwise.
Column width is 80 in dt-schema as well, right?

> 
> > +          Source PLL A (0) or B (1) for the corresponding multisynth divider.
> > +

[...]

> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            enum:
> > +              - silabs,si5351a
> > +              - silabs,si5351a-msop
> > +              - silabs,si5351b
> 
> Isn't this just the 'else' for the next one? Or more parts are coming?

Not sure if more parts are coming - these are the only ones I am aware of. But I
have not checked thoroughly. I thought it better to be explicit, but I will
change the next one to an else: in v3 unless you change your mind.

> 
> > +    then:
> > +      properties:
> > +        clocks:
> > +          minItems: 1
> > +          maxItems: 1
> > +        clock-names:
> > +          items:
> > +            - const: xtal
> > +
> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            const: silabs,si5351c
> > +    then:
> > +      properties:
> > +        clocks:
> > +          minItems: 1
> > +          maxItems: 2
> > +        clock-names:
> > +          minItems: 1
> > +          items:
> > +            - const: xtal
> > +            - const: clkin
> 
> Define clocks and clock-names at the top level and just use 
> minItems/maxItems in the if/then schemas.

I was trying to imply here that it is invalid to specify clkin for the former
three part types - only for the si5351c. If I specify both in the top-level
clock-names:items then it would allow something like this:

  clk {
    compatible = "silabs,si5351a-msop";
    clocks = <&ref25>;
    clock-names = "clkin"; /* not OK - Si5351A-MSOP only supports XTAL */
  };

Kind regards,
Alvin


More information about the linux-arm-kernel mailing list