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

title: PFUZE100 family of regulators

maintainers:
  - Robin Gong <yibin.gong@nxp.com>

description: |
  The valid names for regulators are:
  --PFUZE100
  sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6
  --PFUZE200
  sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin
  --PFUZE3000
  sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4
  --PFUZE3001
  sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4

  Each regulator is defined using the standard binding for regulators.

properties:
  $nodename:
    pattern: "^pmic@[0-9]$"

  compatible:
    enum:
      - fsl,pfuze100
      - fsl,pfuze200
      - fsl,pfuze3000
      - fsl,pfuze3001

  reg:
    maxItems: 1

  fsl,pfuze-support-disable-sw:
    $ref: /schemas/types.yaml#/definitions/flag
    description: |
      Boolean, if present disable all unused switch regulators to save power
      consumption. Attention, ensure that all important regulators
      (e.g. DDR ref, DDR supply) has set the "regulator-always-on" property.
      If not present, the switched regulators are always on and can't be
      disabled. This binding is a workaround to keep backward compatibility
      with old dtb's which rely on the fact that the switched regulators are
      always on and don't mark them explicit as "regulator-always-on".

  fsl,pmic-stby-poweroff:
    $ref: /schemas/types.yaml#/definitions/flag
    description: |
      if present, configure the PMIC to shutdown all
      power rails when PMIC_STBY_REQ line is asserted during the power off sequence.
      Use this option if the SoC should be powered off by external power management
      IC (PMIC) on PMIC_STBY_REQ signal.
      As opposite to PMIC_STBY_REQ boards can implement PMIC_ON_REQ signal.

  regulators:
    type: object
    description: |
      list of regulators provided by this controller.

    patternProperties:
      "^sw([1-4]|[1-4][a-c]|[1-4][a-c][a-c])$":
        $ref: "regulator.yaml#"
        type: object

      "^vgen[1-6]$":
        $ref: "regulator.yaml#"
        type: object

      "^(vsnvs|vref|vrefddr|swbst|coin)$":
        $ref: "regulator.yaml#"
        type: object

    additionalProperties: false

required:
  - compatible
  - reg

additionalProperties: false

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

        pmic@8 {
            compatible = "fsl,pfuze100";
            reg = <0x08>;

            regulators {
                sw1a_reg: sw1ab {
                    regulator-min-microvolt = <300000>;
                    regulator-max-microvolt = <1875000>;
                    regulator-boot-on;
                    regulator-always-on;
                    regulator-ramp-delay = <6250>;
                };

                sw1c_reg: sw1c {
                    regulator-min-microvolt = <300000>;
                    regulator-max-microvolt = <1875000>;
                    regulator-boot-on;
                    regulator-always-on;
                };

                sw2_reg: sw2 {
                    regulator-min-microvolt = <800000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-boot-on;
                    regulator-always-on;
                };

                sw3a_reg: sw3a {
                    regulator-min-microvolt = <400000>;
                    regulator-max-microvolt = <1975000>;
                    regulator-boot-on;
                    regulator-always-on;
                };

                sw3b_reg: sw3b {
                    regulator-min-microvolt = <400000>;
                    regulator-max-microvolt = <1975000>;
                    regulator-boot-on;
                    regulator-always-on;
                };

                sw4_reg: sw4 {
                    regulator-min-microvolt = <800000>;
                    regulator-max-microvolt = <3300000>;
                };

                swbst_reg: swbst {
                    regulator-min-microvolt = <5000000>;
                    regulator-max-microvolt = <5150000>;
                };

                snvs_reg: vsnvs {
                    regulator-min-microvolt = <1000000>;
                    regulator-max-microvolt = <3000000>;
                    regulator-boot-on;
                    regulator-always-on;
                };

                vref_reg: vrefddr {
                    regulator-boot-on;
                    regulator-always-on;
                };

                vgen1_reg: vgen1 {
                    regulator-min-microvolt = <800000>;
                    regulator-max-microvolt = <1550000>;
                };

                vgen2_reg: vgen2 {
                    regulator-min-microvolt = <800000>;
                    regulator-max-microvolt = <1550000>;
                };

                vgen3_reg: vgen3 {
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <3300000>;
                };

                vgen4_reg: vgen4 {
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-always-on;
                };

                vgen5_reg: vgen5 {
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-always-on;
                };

                vgen6_reg: vgen6 {
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <3300000>;
                    regulator-always-on;
                };
            };
        };
    };
