1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/mps,mpq7920.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Monolithic Power System MPQ7920 PMIC
8
9maintainers:
10  - Saravanan Sekar <sravanhome@gmail.com>
11
12properties:
13  $nodename:
14    pattern: "pmic@[0-9a-f]{1,2}"
15  compatible:
16    enum:
17      - mps,mpq7920
18
19  reg:
20    maxItems: 1
21
22  regulators:
23    type: object
24
25    description: |
26      list of regulators provided by this controller, must be named
27      after their hardware counterparts BUCK[1-4], one LDORTC, and LDO[2-5]
28
29    properties:
30      mps,switch-freq:
31        $ref: /schemas/types.yaml#/definitions/uint8
32        enum: [0, 1, 2, 3]
33        default: 2
34        description: |
35          switching frequency must be one of following corresponding value
36          1.1MHz, 1.65MHz, 2.2MHz, 2.75MHz
37
38      ldortc:
39        type: object
40        $ref: regulator.yaml#
41        unevaluatedProperties: false
42
43    patternProperties:
44      "^ldo[1-4]$":
45        type: object
46        $ref: regulator.yaml#
47        unevaluatedProperties: false
48
49      "^buck[1-4]$":
50        type: object
51        $ref: regulator.yaml#
52
53        properties:
54          mps,buck-softstart:
55            $ref: /schemas/types.yaml#/definitions/uint8
56            enum: [0, 1, 2, 3]
57            description: |
58              defines the soft start time of this buck, must be one of the following
59              corresponding values 150us, 300us, 610us, 920us
60
61          mps,buck-phase-delay:
62            $ref: /schemas/types.yaml#/definitions/uint8
63            enum: [0, 1, 2, 3]
64            description: |
65              defines the phase delay of this buck, must be one of the following
66              corresponding values 0deg, 90deg, 180deg, 270deg
67
68          mps,buck-ovp-disable:
69            type: boolean
70            description: |
71              disables over voltage protection of this buck
72
73        unevaluatedProperties: false
74
75    additionalProperties: false
76
77required:
78  - compatible
79  - reg
80  - regulators
81
82additionalProperties: false
83
84examples:
85  - |
86    i2c {
87        #address-cells = <1>;
88        #size-cells = <0>;
89
90        pmic@69 {
91          compatible = "mps,mpq7920";
92          reg = <0x69>;
93
94          regulators {
95            mps,switch-freq = /bits/ 8 <1>;
96
97            buck1 {
98             regulator-name = "buck1";
99             regulator-min-microvolt = <400000>;
100             regulator-max-microvolt = <3587500>;
101             regulator-min-microamp  = <460000>;
102             regulator-max-microamp  = <7600000>;
103             regulator-boot-on;
104             mps,buck-ovp-disable;
105             mps,buck-phase-delay = /bits/ 8 <2>;
106             mps,buck-softstart = /bits/ 8 <1>;
107            };
108
109            ldo2 {
110             regulator-name = "ldo2";
111             regulator-min-microvolt = <650000>;
112             regulator-max-microvolt = <3587500>;
113            };
114         };
115       };
116     };
117...
118