Hi Rob, On Tue, Aug 18, 2020 at 9:10 AM Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote: > On Tue, Aug 18, 2020 at 1:32 AM Rob Herring <robh@xxxxxxxxxx> wrote: > > On Fri, Aug 07, 2020 at 04:13:45PM +0200, Geert Uytterhoeven wrote: > > > Convert the Renesas Pin Function Controller (PFC) Device Tree binding > > > documentation to json-schema. > > > > > > Document missing properties. > > > Drop deprecated and obsolete #gpio-range-cells property. > > > Update the example to match reality. > > > Drop consumer examples, as they do not belong here. > > > > > > Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > > > --- > > > Still RFC, due to the FIXMEs near the enum descriptions. > > > If I enable the enums checks, I get e.g.: > > > > > > [[1800]] is not one of [1800, 3300] > > > > > > Note the double square brackets around 1800. > > > The usual error message doesn't have them, e.g.: > > > > > > 2000 is not one of [1800, 3300] > > > > > > So this looks like a bug in the tooling? > > > > Yes, we only recently started supporting schemas under > > 'additionalProperties', but failed to apply fixups. > > > > I have a fix I'm testing out. I'm bumping the version requirement in > > 5.10, so I'll make sure it is there. > > Thanks, looking forward to it. I can confirm this is fixed in v2020.08.1. > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/pinctrl/renesas,pfc.yaml > > > > + interrupts-extended: > > > > Just use 'interrupts' here. 'interrupt-extended' is always magically > > supported. > > Apparently not everywhere... > > Documentation/devicetree/bindings/pinctrl/renesas,pfc.example.dt.yaml: > pin-controller@e6050000: 'interrupts' is a required property The existing fixup doesn't handle "required: interrupts" if that is inside an if/then/else block. > > > +additionalProperties: > > > + anyOf: > > > + - type: object > > > + allOf: > > > + - $ref: pincfg-node.yaml# > > > + - $ref: pinmux-node.yaml# > > > + > > > + description: > > > + Pin controller client devices use pin configuration subnodes (children > > > + and grandchildren) for desired pin configuration. > > > + Client device subnodes use below standard properties. > > > + > > > + properties: > > > + phandle: true > > > > Once fixed, this won't be necessary. > > OK. Seems to be still an issue in v2020.08.1? > > > + function: true > > > + groups: true > > > + pins: true > > > + bias-disable: true > > > + bias-pull-down: true > > > + bias-pull-up: true > > > + drive-strength: > > > + true # FIXME enum: [ 3, 6, 9, 12, 15, 18, 21, 24 ] # Superset of supported values > > > + # avb:pins_mdio:drive-strength: [[24]] is not one of [3, 6, 9, 12, 15, 18, 21, 24] > > > + power-source: > > > + true # FIXME enum: [ 1800, 3300 ] > > > + # sd0_uhs:power-source: [[1800]] is not one of [1800, 3300] > > > + gpio-hog: true > > > + gpios: true > > > + input: true > > > + output-high: true > > > + output-low: true > > > + > > > + additionalProperties: false > > > + > > > + - type: object > > > + properties: > > > + phandle: true > > > > For this one, you can just link it back to the first entry: > > > > - type: object > > additionalProperties: > > $ref: "#/additionalProperties/anyOf/0" > > Thanks, cool! Works great! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds