On 30/10/2023 20:36, Artur Weber wrote: > The BCM59054 MFD is fairly similar to the BCM59056, and will use > the same driver. Add compatible and specify the allowed regulator > nodes. > > Signed-off-by: Artur Weber <aweber.kernel@xxxxxxxxx> > --- > .../devicetree/bindings/mfd/brcm,bcm59056.yaml | 125 +++++++++++++++------ > 1 file changed, 88 insertions(+), 37 deletions(-) > > diff --git a/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml b/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > index 6d6acc9fd312..5b5044867eca 100644 > --- a/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > +++ b/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > @@ -12,6 +12,7 @@ maintainers: > properties: > compatible: > enum: > + - "brcm,bcm59054" Where do you see syntax with quotes? > - "brcm,bcm59056" > > reg: > @@ -24,43 +25,93 @@ properties: > type: object > description: Container node for regulators. > > - # The valid regulator node names for BCM59056 are: > - # rfldo, camldo1, camldo2, simldo1, simldo2, sdldo, sdxldo, > - # mmcldo1, mmcldo2, audldo, micldo, usbldo, vibldo, > - # csr, iosr1, iosr2, msr, sdsr1, sdsr2, vsr, > - # gpldo1, gpldo2, gpldo3, gpldo4, gpldo5, gpldo6, > - # vbus > - patternProperties: > - "^(cam|sim|mmc)ldo[1-2]$": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > - > - "^(rf|sd|sdx|aud|mic|usb|vib)ldo$": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > - > - "^(c|m|v)sr$": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > - > - "^(io|sd)sr[1-2]$": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > - > - "^gpldo[1-6]$": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > - > - properties: > - "vbus": > - type: object > - $ref: /schemas/regulator/regulator.yaml# > - unevaluatedProperties: false > +allOf: No. We do not define properties in allOf:if: block. If there are just few differences, define all at the top level and disallow few (foo-bar: false). If there are more, just create separate bindings. Best regards, Krzysztof