Re: [PATCH v6 02/10] dt-bindings: mfd: brcm,bcm59056: Add compatible for BCM59054
From: Rob Herring <robh@kernel.org>
Date: 2025-03-04 14:19:35
Also in:
linux-devicetree, lkml
On Tue, Mar 04, 2025 at 07:20:33AM +0100, Artur Weber wrote:
quoted hunk ↗ jump to hunk
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@gmail.com> --- 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@gmail.com/ (local) 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.
quoted hunk ↗ jump to hunk
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>