xref: /openbmc/linux/Documentation/devicetree/bindings/regulator/mps,mpq7920.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
144e9b344SSaravanan Sekar# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
244e9b344SSaravanan Sekar%YAML 1.2
344e9b344SSaravanan Sekar---
444e9b344SSaravanan Sekar$id: http://devicetree.org/schemas/regulator/mps,mpq7920.yaml#
544e9b344SSaravanan Sekar$schema: http://devicetree.org/meta-schemas/core.yaml#
644e9b344SSaravanan Sekar
744e9b344SSaravanan Sekartitle: Monolithic Power System MPQ7920 PMIC
844e9b344SSaravanan Sekar
944e9b344SSaravanan Sekarmaintainers:
1044e9b344SSaravanan Sekar  - Saravanan Sekar <sravanhome@gmail.com>
1144e9b344SSaravanan Sekar
1244e9b344SSaravanan Sekarproperties:
1344e9b344SSaravanan Sekar  $nodename:
1444e9b344SSaravanan Sekar    pattern: "pmic@[0-9a-f]{1,2}"
1544e9b344SSaravanan Sekar  compatible:
1644e9b344SSaravanan Sekar    enum:
1744e9b344SSaravanan Sekar      - mps,mpq7920
1844e9b344SSaravanan Sekar
1944e9b344SSaravanan Sekar  reg:
2044e9b344SSaravanan Sekar    maxItems: 1
2144e9b344SSaravanan Sekar
2244e9b344SSaravanan Sekar  regulators:
2344e9b344SSaravanan Sekar    type: object
243d21a460SRob Herring
2544e9b344SSaravanan Sekar    description: |
2644e9b344SSaravanan Sekar      list of regulators provided by this controller, must be named
2744e9b344SSaravanan Sekar      after their hardware counterparts BUCK[1-4], one LDORTC, and LDO[2-5]
2844e9b344SSaravanan Sekar
2944e9b344SSaravanan Sekar    properties:
3044e9b344SSaravanan Sekar      mps,switch-freq:
31cff5c895SRob Herring        $ref: /schemas/types.yaml#/definitions/uint8
3244e9b344SSaravanan Sekar        enum: [0, 1, 2, 3]
3344e9b344SSaravanan Sekar        default: 2
3444e9b344SSaravanan Sekar        description: |
3544e9b344SSaravanan Sekar          switching frequency must be one of following corresponding value
3644e9b344SSaravanan Sekar          1.1MHz, 1.65MHz, 2.2MHz, 2.75MHz
3744e9b344SSaravanan Sekar
38f88321a3SRob Herring      ldortc:
3944e9b344SSaravanan Sekar        type: object
403d21a460SRob Herring        $ref: regulator.yaml#
41*d2d54819SKrzysztof Kozlowski        unevaluatedProperties: false
4244e9b344SSaravanan Sekar
43f88321a3SRob Herring    patternProperties:
44f88321a3SRob Herring      "^ldo[1-4]$":
4544e9b344SSaravanan Sekar        type: object
463d21a460SRob Herring        $ref: regulator.yaml#
47*d2d54819SKrzysztof Kozlowski        unevaluatedProperties: false
4844e9b344SSaravanan Sekar
4944e9b344SSaravanan Sekar      "^buck[1-4]$":
5044e9b344SSaravanan Sekar        type: object
513d21a460SRob Herring        $ref: regulator.yaml#
5244e9b344SSaravanan Sekar
5344e9b344SSaravanan Sekar        properties:
5444e9b344SSaravanan Sekar          mps,buck-softstart:
55cff5c895SRob Herring            $ref: /schemas/types.yaml#/definitions/uint8
5644e9b344SSaravanan Sekar            enum: [0, 1, 2, 3]
5744e9b344SSaravanan Sekar            description: |
5844e9b344SSaravanan Sekar              defines the soft start time of this buck, must be one of the following
5944e9b344SSaravanan Sekar              corresponding values 150us, 300us, 610us, 920us
6044e9b344SSaravanan Sekar
6144e9b344SSaravanan Sekar          mps,buck-phase-delay:
62cff5c895SRob Herring            $ref: /schemas/types.yaml#/definitions/uint8
6344e9b344SSaravanan Sekar            enum: [0, 1, 2, 3]
6444e9b344SSaravanan Sekar            description: |
6544e9b344SSaravanan Sekar              defines the phase delay of this buck, must be one of the following
6644e9b344SSaravanan Sekar              corresponding values 0deg, 90deg, 180deg, 270deg
6744e9b344SSaravanan Sekar
6844e9b344SSaravanan Sekar          mps,buck-ovp-disable:
6944e9b344SSaravanan Sekar            type: boolean
7044e9b344SSaravanan Sekar            description: |
7144e9b344SSaravanan Sekar              disables over voltage protection of this buck
7244e9b344SSaravanan Sekar
732bdfd4fbSRob Herring        unevaluatedProperties: false
742bdfd4fbSRob Herring
7544e9b344SSaravanan Sekar    additionalProperties: false
7644e9b344SSaravanan Sekar
7744e9b344SSaravanan Sekarrequired:
7844e9b344SSaravanan Sekar  - compatible
7944e9b344SSaravanan Sekar  - reg
8044e9b344SSaravanan Sekar  - regulators
8144e9b344SSaravanan Sekar
8244e9b344SSaravanan SekaradditionalProperties: false
8344e9b344SSaravanan Sekar
8444e9b344SSaravanan Sekarexamples:
8544e9b344SSaravanan Sekar  - |
8644e9b344SSaravanan Sekar    i2c {
8744e9b344SSaravanan Sekar        #address-cells = <1>;
8844e9b344SSaravanan Sekar        #size-cells = <0>;
8944e9b344SSaravanan Sekar
9044e9b344SSaravanan Sekar        pmic@69 {
9144e9b344SSaravanan Sekar          compatible = "mps,mpq7920";
9244e9b344SSaravanan Sekar          reg = <0x69>;
9344e9b344SSaravanan Sekar
9444e9b344SSaravanan Sekar          regulators {
9544e9b344SSaravanan Sekar            mps,switch-freq = /bits/ 8 <1>;
9644e9b344SSaravanan Sekar
9744e9b344SSaravanan Sekar            buck1 {
9844e9b344SSaravanan Sekar             regulator-name = "buck1";
9944e9b344SSaravanan Sekar             regulator-min-microvolt = <400000>;
10044e9b344SSaravanan Sekar             regulator-max-microvolt = <3587500>;
10144e9b344SSaravanan Sekar             regulator-min-microamp  = <460000>;
10244e9b344SSaravanan Sekar             regulator-max-microamp  = <7600000>;
10344e9b344SSaravanan Sekar             regulator-boot-on;
10444e9b344SSaravanan Sekar             mps,buck-ovp-disable;
10544e9b344SSaravanan Sekar             mps,buck-phase-delay = /bits/ 8 <2>;
10644e9b344SSaravanan Sekar             mps,buck-softstart = /bits/ 8 <1>;
10744e9b344SSaravanan Sekar            };
10844e9b344SSaravanan Sekar
10944e9b344SSaravanan Sekar            ldo2 {
11044e9b344SSaravanan Sekar             regulator-name = "ldo2";
11144e9b344SSaravanan Sekar             regulator-min-microvolt = <650000>;
11244e9b344SSaravanan Sekar             regulator-max-microvolt = <3587500>;
11344e9b344SSaravanan Sekar            };
11444e9b344SSaravanan Sekar         };
11544e9b344SSaravanan Sekar       };
11644e9b344SSaravanan Sekar     };
11744e9b344SSaravanan Sekar...
118