# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/brcm,bcm59056.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Broadcom BCM590xx Power Management Units

maintainers:
  - Artur Weber <aweber.kernel@gmail.com>

properties:
  compatible:
    enum:
      - brcm,bcm59054
      - brcm,bcm59056

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  regulators:
    type: object

required:
  - compatible
  - reg
  - interrupts

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>
    #include <dt-bindings/interrupt-controller/irq.h>

    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        pmic@8 {
            compatible = "brcm,bcm59056";
            reg = <0x08>;
            interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;

            regulators {
                rfldo {
                    regulator-min-microvolt = <1200000>;
                    regulator-max-microvolt = <3300000>;
                };
            };
        };
    };
