On Mon, Nov 18, 2019 at 01:42:48PM +0100, Clément Péron wrote: > Hi Maxime > > On Mon, 18 Nov 2019 at 12:06, Maxime Ripard <mripard@xxxxxxxxxx> wrote: > > > > Hi, > > > > On Mon, Nov 18, 2019 at 12:00:27PM +0100, Clément Péron wrote: > > > From: Jernej Skrabec <jernej.skrabec@xxxxxxxx> > > > > > > H6 PWM block is basically the same as A20 PWM, except that it also has > > > bus clock and reset line which needs to be handled accordingly. > > > > > > Expand Allwinner PWM binding with H6 PWM specifics. > > > > > > Signed-off-by: Jernej Skrabec <jernej.skrabec@xxxxxxxx> > > > Reviewed-by: Rob Herring <robh@xxxxxxxxxx> > > > Signed-off-by: Clément Péron <peron.clem@xxxxxxxxx> > > > --- > > > .../bindings/pwm/allwinner,sun4i-a10-pwm.yaml | 48 +++++++++++++++++++ > > > 1 file changed, 48 insertions(+) > > > > > > diff --git a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > > > index 0ac52f83a58c..1bae446febbb 100644 > > > --- a/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > > > +++ b/Documentation/devicetree/bindings/pwm/allwinner,sun4i-a10-pwm.yaml > > > @@ -30,13 +30,51 @@ properties: > > > - items: > > > - const: allwinner,sun50i-h5-pwm > > > - const: allwinner,sun5i-a13-pwm > > > + - const: allwinner,sun50i-h6-pwm > > > > > > reg: > > > maxItems: 1 > > > > > > clocks: > > > + minItems: 1 > > > + maxItems: 2 > > > + items: > > > + - description: Module Clock > > > + - description: Bus Clock > > > + > > > + # Even though it only applies to subschemas under the conditionals, > > > + # not listing them here will trigger a warning because of the > > > + # additionalsProperties set to false. > > > + clock-names: true > > > + > > > + resets: > > > maxItems: 1 > > > > > > + if: > > > + properties: > > > + compatible: > > > + contains: > > > + const: allwinner,sun50i-h6-pwm > > > + > > > + then: > > > + properties: > > > + clocks: > > > + maxItems: 2 > > > + > > > + clock-names: > > > + items: > > > + - const: mod > > > + - const: bus > > > + > > > + required: > > > + - clock-names > > > + - resets > > > + > > > + else: > > > + properties: > > > + clocks: > > > + maxItems: 1 > > > + > > > > Sorry for not noticing this earlier, but this should be at the topmost > > level > > No problem, but I don't get what you want, (yaml format is new for me). > Do you mean I should put the if condition before the "resets" ? No, here if we condense a bit the file, we have something like: title: PWM properties: compatible: ... ... resets: ... if: properties: ... then: properties: ... which means that you expect that the node may contain a compatible property, a resets one, and then two properties "if" and "then", which in turn contain properties (ie, two nodes). This is obviously not what you want, what you want instead is: properties: compatible: ... ... resets: ... if: properties: ... then: properties: ... Which then describes that there's two properties, compatible and resets, and if the schema under 'if' is valid against the node we try to validate, the schema under 'then' is used to validate the node as well. I hope it's clearer, Maxime
Attachment:
signature.asc
Description: PGP signature