xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/pfuze100.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
16be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26be33864SEmmanuel Vadot%YAML 1.2
36be33864SEmmanuel Vadot---
46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/regulator/pfuze100.yaml#
56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
66be33864SEmmanuel Vadot
76be33864SEmmanuel Vadottitle: PFUZE100 family of regulators
86be33864SEmmanuel Vadot
96be33864SEmmanuel Vadotmaintainers:
106be33864SEmmanuel Vadot  - Robin Gong <yibin.gong@nxp.com>
116be33864SEmmanuel Vadot
126be33864SEmmanuel Vadotdescription: |
136be33864SEmmanuel Vadot  The valid names for regulators are:
146be33864SEmmanuel Vadot  --PFUZE100
156be33864SEmmanuel Vadot  sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6
166be33864SEmmanuel Vadot  --PFUZE200
176be33864SEmmanuel Vadot  sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin
186be33864SEmmanuel Vadot  --PFUZE3000
196be33864SEmmanuel Vadot  sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4
206be33864SEmmanuel Vadot  --PFUZE3001
216be33864SEmmanuel Vadot  sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4
226be33864SEmmanuel Vadot
236be33864SEmmanuel Vadot  Each regulator is defined using the standard binding for regulators.
246be33864SEmmanuel Vadot
256be33864SEmmanuel Vadotproperties:
266be33864SEmmanuel Vadot  $nodename:
276be33864SEmmanuel Vadot    pattern: "^pmic@[0-9]$"
286be33864SEmmanuel Vadot
296be33864SEmmanuel Vadot  compatible:
306be33864SEmmanuel Vadot    enum:
316be33864SEmmanuel Vadot      - fsl,pfuze100
326be33864SEmmanuel Vadot      - fsl,pfuze200
336be33864SEmmanuel Vadot      - fsl,pfuze3000
346be33864SEmmanuel Vadot      - fsl,pfuze3001
356be33864SEmmanuel Vadot
366be33864SEmmanuel Vadot  reg:
376be33864SEmmanuel Vadot    maxItems: 1
386be33864SEmmanuel Vadot
39f126890aSEmmanuel Vadot  interrupts:
40f126890aSEmmanuel Vadot    maxItems: 1
41f126890aSEmmanuel Vadot
426be33864SEmmanuel Vadot  fsl,pfuze-support-disable-sw:
436be33864SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
446be33864SEmmanuel Vadot    description: |
456be33864SEmmanuel Vadot      Boolean, if present disable all unused switch regulators to save power
466be33864SEmmanuel Vadot      consumption. Attention, ensure that all important regulators
476be33864SEmmanuel Vadot      (e.g. DDR ref, DDR supply) has set the "regulator-always-on" property.
486be33864SEmmanuel Vadot      If not present, the switched regulators are always on and can't be
496be33864SEmmanuel Vadot      disabled. This binding is a workaround to keep backward compatibility
506be33864SEmmanuel Vadot      with old dtb's which rely on the fact that the switched regulators are
516be33864SEmmanuel Vadot      always on and don't mark them explicit as "regulator-always-on".
526be33864SEmmanuel Vadot
536be33864SEmmanuel Vadot  fsl,pmic-stby-poweroff:
546be33864SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
556be33864SEmmanuel Vadot    description: |
566be33864SEmmanuel Vadot      if present, configure the PMIC to shutdown all
576be33864SEmmanuel Vadot      power rails when PMIC_STBY_REQ line is asserted during the power off sequence.
586be33864SEmmanuel Vadot      Use this option if the SoC should be powered off by external power management
596be33864SEmmanuel Vadot      IC (PMIC) on PMIC_STBY_REQ signal.
606be33864SEmmanuel Vadot      As opposite to PMIC_STBY_REQ boards can implement PMIC_ON_REQ signal.
616be33864SEmmanuel Vadot
626be33864SEmmanuel Vadot  regulators:
636be33864SEmmanuel Vadot    type: object
646be33864SEmmanuel Vadot    description: |
656be33864SEmmanuel Vadot      list of regulators provided by this controller.
666be33864SEmmanuel Vadot
676be33864SEmmanuel Vadot    patternProperties:
686be33864SEmmanuel Vadot      "^sw([1-4]|[1-4][a-c]|[1-4][a-c][a-c])$":
69fac71e4eSEmmanuel Vadot        $ref: regulator.yaml#
706be33864SEmmanuel Vadot        type: object
71*aa1a8ff2SEmmanuel Vadot        unevaluatedProperties: false
726be33864SEmmanuel Vadot
736be33864SEmmanuel Vadot      "^vgen[1-6]$":
74fac71e4eSEmmanuel Vadot        $ref: regulator.yaml#
756be33864SEmmanuel Vadot        type: object
76*aa1a8ff2SEmmanuel Vadot        unevaluatedProperties: false
776be33864SEmmanuel Vadot
78c9ccf3a3SEmmanuel Vadot      "^vldo[1-4]$":
79fac71e4eSEmmanuel Vadot        $ref: regulator.yaml#
80c9ccf3a3SEmmanuel Vadot        type: object
81*aa1a8ff2SEmmanuel Vadot        unevaluatedProperties: false
82c9ccf3a3SEmmanuel Vadot
83c9ccf3a3SEmmanuel Vadot      "^(vsnvs|vref|vrefddr|swbst|coin|v33|vccsd)$":
84fac71e4eSEmmanuel Vadot        $ref: regulator.yaml#
856be33864SEmmanuel Vadot        type: object
86*aa1a8ff2SEmmanuel Vadot        unevaluatedProperties: false
876be33864SEmmanuel Vadot
886be33864SEmmanuel Vadot    additionalProperties: false
896be33864SEmmanuel Vadot
906be33864SEmmanuel Vadotrequired:
916be33864SEmmanuel Vadot  - compatible
926be33864SEmmanuel Vadot  - reg
936be33864SEmmanuel Vadot
946be33864SEmmanuel VadotadditionalProperties: false
956be33864SEmmanuel Vadot
966be33864SEmmanuel Vadotexamples:
976be33864SEmmanuel Vadot  - |
986be33864SEmmanuel Vadot    i2c {
996be33864SEmmanuel Vadot        #address-cells = <1>;
1006be33864SEmmanuel Vadot        #size-cells = <0>;
1016be33864SEmmanuel Vadot
1026be33864SEmmanuel Vadot        pmic@8 {
1036be33864SEmmanuel Vadot            compatible = "fsl,pfuze100";
1046be33864SEmmanuel Vadot            reg = <0x08>;
1056be33864SEmmanuel Vadot
1066be33864SEmmanuel Vadot            regulators {
1076be33864SEmmanuel Vadot                sw1a_reg: sw1ab {
1086be33864SEmmanuel Vadot                    regulator-min-microvolt = <300000>;
1096be33864SEmmanuel Vadot                    regulator-max-microvolt = <1875000>;
1106be33864SEmmanuel Vadot                    regulator-boot-on;
1116be33864SEmmanuel Vadot                    regulator-always-on;
1126be33864SEmmanuel Vadot                    regulator-ramp-delay = <6250>;
1136be33864SEmmanuel Vadot                };
1146be33864SEmmanuel Vadot
1156be33864SEmmanuel Vadot                sw1c_reg: sw1c {
1166be33864SEmmanuel Vadot                    regulator-min-microvolt = <300000>;
1176be33864SEmmanuel Vadot                    regulator-max-microvolt = <1875000>;
1186be33864SEmmanuel Vadot                    regulator-boot-on;
1196be33864SEmmanuel Vadot                    regulator-always-on;
1206be33864SEmmanuel Vadot                };
1216be33864SEmmanuel Vadot
1226be33864SEmmanuel Vadot                sw2_reg: sw2 {
1236be33864SEmmanuel Vadot                    regulator-min-microvolt = <800000>;
1246be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1256be33864SEmmanuel Vadot                    regulator-boot-on;
1266be33864SEmmanuel Vadot                    regulator-always-on;
1276be33864SEmmanuel Vadot                };
1286be33864SEmmanuel Vadot
1296be33864SEmmanuel Vadot                sw3a_reg: sw3a {
1306be33864SEmmanuel Vadot                    regulator-min-microvolt = <400000>;
1316be33864SEmmanuel Vadot                    regulator-max-microvolt = <1975000>;
1326be33864SEmmanuel Vadot                    regulator-boot-on;
1336be33864SEmmanuel Vadot                    regulator-always-on;
1346be33864SEmmanuel Vadot                };
1356be33864SEmmanuel Vadot
1366be33864SEmmanuel Vadot                sw3b_reg: sw3b {
1376be33864SEmmanuel Vadot                    regulator-min-microvolt = <400000>;
1386be33864SEmmanuel Vadot                    regulator-max-microvolt = <1975000>;
1396be33864SEmmanuel Vadot                    regulator-boot-on;
1406be33864SEmmanuel Vadot                    regulator-always-on;
1416be33864SEmmanuel Vadot                };
1426be33864SEmmanuel Vadot
1436be33864SEmmanuel Vadot                sw4_reg: sw4 {
1446be33864SEmmanuel Vadot                    regulator-min-microvolt = <800000>;
1456be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1466be33864SEmmanuel Vadot                };
1476be33864SEmmanuel Vadot
1486be33864SEmmanuel Vadot                swbst_reg: swbst {
1496be33864SEmmanuel Vadot                    regulator-min-microvolt = <5000000>;
1506be33864SEmmanuel Vadot                    regulator-max-microvolt = <5150000>;
1516be33864SEmmanuel Vadot                };
1526be33864SEmmanuel Vadot
1536be33864SEmmanuel Vadot                snvs_reg: vsnvs {
1546be33864SEmmanuel Vadot                    regulator-min-microvolt = <1000000>;
1556be33864SEmmanuel Vadot                    regulator-max-microvolt = <3000000>;
1566be33864SEmmanuel Vadot                    regulator-boot-on;
1576be33864SEmmanuel Vadot                    regulator-always-on;
1586be33864SEmmanuel Vadot                };
1596be33864SEmmanuel Vadot
1606be33864SEmmanuel Vadot                vref_reg: vrefddr {
1616be33864SEmmanuel Vadot                    regulator-boot-on;
1626be33864SEmmanuel Vadot                    regulator-always-on;
1636be33864SEmmanuel Vadot                };
1646be33864SEmmanuel Vadot
1656be33864SEmmanuel Vadot                vgen1_reg: vgen1 {
1666be33864SEmmanuel Vadot                    regulator-min-microvolt = <800000>;
1676be33864SEmmanuel Vadot                    regulator-max-microvolt = <1550000>;
1686be33864SEmmanuel Vadot                };
1696be33864SEmmanuel Vadot
1706be33864SEmmanuel Vadot                vgen2_reg: vgen2 {
1716be33864SEmmanuel Vadot                    regulator-min-microvolt = <800000>;
1726be33864SEmmanuel Vadot                    regulator-max-microvolt = <1550000>;
1736be33864SEmmanuel Vadot                };
1746be33864SEmmanuel Vadot
1756be33864SEmmanuel Vadot                vgen3_reg: vgen3 {
1766be33864SEmmanuel Vadot                    regulator-min-microvolt = <1800000>;
1776be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1786be33864SEmmanuel Vadot                };
1796be33864SEmmanuel Vadot
1806be33864SEmmanuel Vadot                vgen4_reg: vgen4 {
1816be33864SEmmanuel Vadot                    regulator-min-microvolt = <1800000>;
1826be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1836be33864SEmmanuel Vadot                    regulator-always-on;
1846be33864SEmmanuel Vadot                };
1856be33864SEmmanuel Vadot
1866be33864SEmmanuel Vadot                vgen5_reg: vgen5 {
1876be33864SEmmanuel Vadot                    regulator-min-microvolt = <1800000>;
1886be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1896be33864SEmmanuel Vadot                    regulator-always-on;
1906be33864SEmmanuel Vadot                };
1916be33864SEmmanuel Vadot
1926be33864SEmmanuel Vadot                vgen6_reg: vgen6 {
1936be33864SEmmanuel Vadot                    regulator-min-microvolt = <1800000>;
1946be33864SEmmanuel Vadot                    regulator-max-microvolt = <3300000>;
1956be33864SEmmanuel Vadot                    regulator-always-on;
1966be33864SEmmanuel Vadot                };
1976be33864SEmmanuel Vadot            };
1986be33864SEmmanuel Vadot        };
1996be33864SEmmanuel Vadot    };
200