On Tue, Mar 04, 2025 at 07:20:33AM +0100, 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> > --- > Changes in v6: > - Replace mfd/brcm,bcm590xx.yaml with mfd/brcm,bcm59056.yaml > > Changes in v5: > - Replace mfd/brcm,bcm59056.yaml with mfd/brcm,bcm590xx.yaml in > regulator bindings description > > Changes in v4: > - Fix yamllint errors (missing unevaluatedProperties) > - Drop comment with regulator name list > - Use full schema paths for $reg > - Change description of regulator binding to mention BCM59054 > explicitly > - Drop quotes around vbus reg name > - Change "Power Management IC" to "Power Management Unit" to match > official Broadcom naming > > Note that I did not end up moving the regulator refs from > allOf compatible matches; I explained my reasoning in [1]. > > [1] https://lore.kernel.org/lkml/ab853605-859d-44c6-8cbd-44391cd677e6@xxxxxxxxx/ > > Changes in v3: > - Split regulator node into separate file > - Removed quotes around compatible > --- > .../devicetree/bindings/mfd/brcm,bcm59056.yaml | 26 +++++++++- > .../bindings/regulator/brcm,bcm59054.yaml | 56 ++++++++++++++++++++++ > 2 files changed, 80 insertions(+), 2 deletions(-) > > diff --git a/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml b/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > index b387ef9885c3ac524e0782545dbca9c0e81a556c..b67d7a723fc242869e5bdc6b3602785f62af45bd 100644 > --- a/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > +++ b/Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml > @@ -11,7 +11,9 @@ maintainers: > > properties: > compatible: > - const: brcm,bcm59056 > + enum: > + - brcm,bcm59054 > + - brcm,bcm59056 > > reg: > maxItems: 1 > @@ -21,7 +23,6 @@ properties: > > regulators: > type: object > - $ref: /schemas/regulator/brcm,bcm59056.yaml# Just do: additionalProperties: true properties: compatible: contains: enum: - brcm,bcm59056 - brcm,bcm59054 (This patch should just add the last line) And drop the allOf below. > > required: > - compatible > @@ -30,6 +31,27 @@ required: > > additionalProperties: false > > +allOf: > + - if: > + properties: > + compatible: > + contains: > + const: brcm,bcm59054 > + then: > + properties: > + regulators: > + $ref: /schemas/regulator/brcm,bcm59054.yaml# > + > + - if: > + properties: > + compatible: > + contains: > + const: brcm,bcm59056 > + then: > + properties: > + regulators: > + $ref: /schemas/regulator/brcm,bcm59056.yaml# > + > examples: > - | > #include <dt-bindings/interrupt-controller/arm-gic.h>