xref: /linux/Documentation/devicetree/bindings/regulator/nxp,pf8x00-regulator.yaml (revision be969b7cfbcfa8a835a528f1dc467f0975c6d883)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/nxp,pf8x00-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NXP PF8100/PF8121A/PF8200 PMIC regulators
8
9maintainers:
10  - Jagan Teki <jagan@amarulasolutions.com>
11  - Troy Kisky <troy.kisky@boundarydevices.com>
12
13description: |
14  PF8100/PF8121A/PF8200 is a PMIC designed for highperformance consumer
15  applications. It features seven high efficiency buck converters, four
16  linear and one vsnvs regulators. It has built-in one time programmable
17  fuse bank for device configurations.
18
19properties:
20  compatible:
21    enum:
22      - nxp,pf8x00
23
24  reg:
25    maxItems: 1
26
27  regulators:
28    type: object
29    description: |
30      list of regulators provided by this controller
31
32    patternProperties:
33      "^ldo[1-4]$":
34        type: object
35        $ref: regulator.yaml#
36        description:
37          Properties for single LDO regulator.
38
39        properties:
40          regulator-name:
41            pattern: "^ldo[1-4]$"
42            description:
43              should be "ldo1", ..., "ldo4"
44
45        unevaluatedProperties: false
46
47      "^buck[1-7]$":
48        type: object
49        $ref: regulator.yaml#
50        description:
51          Properties for single BUCK regulator.
52
53        properties:
54          regulator-name:
55            pattern: "^buck[1-7]$"
56            description:
57              should be "buck1", ..., "buck7"
58
59          nxp,ilim-ma:
60            $ref: "/schemas/types.yaml#/definitions/uint32"
61            minimum: 2100
62            maximum: 4500
63            description:
64              BUCK regulators current limit in mA.
65
66              Listed current limits in mA are,
67              2100 (default)
68              2600
69              3000
70              4500
71
72          nxp,phase-shift:
73            $ref: "/schemas/types.yaml#/definitions/uint32"
74            minimum: 45
75            maximum: 0
76            description:
77              BUCK regulators phase shift control in degrees.
78
79              Listed phase shift control values in degrees are,
80              45
81              90
82              135
83              180
84              225
85              270
86              315
87              0 (default)
88
89        unevaluatedProperties: false
90
91      "^vsnvs$":
92        type: object
93        $ref: regulator.yaml#
94        description:
95          Properties for single VSNVS regulator.
96
97        properties:
98          regulator-name:
99            pattern: "^vsnvs$"
100            description:
101              should be "vsnvs"
102
103        unevaluatedProperties: false
104
105    additionalProperties: false
106
107required:
108  - compatible
109  - reg
110  - regulators
111
112additionalProperties: false
113
114examples:
115  - |
116    i2c1 {
117        #address-cells = <1>;
118        #size-cells = <0>;
119
120        pmic@8 {
121            compatible = "nxp,pf8x00";
122            reg = <0x08>;
123
124            regulators {
125                reg_ldo1: ldo1 {
126                    regulator-always-on;
127                    regulator-boot-on;
128                    regulator-max-microvolt = <5000000>;
129                    regulator-min-microvolt = <1500000>;
130                };
131
132                reg_ldo2: ldo2 {
133                    regulator-always-on;
134                    regulator-boot-on;
135                    regulator-max-microvolt = <5000000>;
136                    regulator-min-microvolt = <1500000>;
137                };
138
139                reg_ldo3: ldo3 {
140                    regulator-always-on;
141                    regulator-boot-on;
142                    regulator-max-microvolt = <5000000>;
143                    regulator-min-microvolt = <1500000>;
144                };
145
146                reg_ldo4: ldo4 {
147                    regulator-always-on;
148                    regulator-boot-on;
149                    regulator-max-microvolt = <5000000>;
150                    regulator-min-microvolt = <1500000>;
151                };
152
153                reg_buck1: buck1 {
154                    nxp,ilim-ma = <4500>;
155                    regulator-always-on;
156                    regulator-boot-on;
157                    regulator-max-microvolt = <1800000>;
158                    regulator-min-microvolt =  <400000>;
159                };
160
161                reg_buck2: buck2 {
162                    regulator-always-on;
163                    regulator-boot-on;
164                    regulator-max-microvolt = <1800000>;
165                    regulator-min-microvolt =  <400000>;
166                };
167
168                reg_buck3: buck3 {
169                    regulator-always-on;
170                    regulator-boot-on;
171                    regulator-max-microvolt = <1800000>;
172                    regulator-min-microvolt =  <400000>;
173                };
174
175                reg_buck4: buck4 {
176                    regulator-always-on;
177                    regulator-boot-on;
178                    regulator-max-microvolt = <1800000>;
179                    regulator-min-microvolt =  <400000>;
180                };
181
182                reg_buck5: buck5 {
183                    regulator-always-on;
184                    regulator-boot-on;
185                    regulator-max-microvolt = <1800000>;
186                    regulator-min-microvolt =  <400000>;
187                };
188
189                reg_buck6: buck6 {
190                    regulator-always-on;
191                    regulator-boot-on;
192                    regulator-max-microvolt = <1800000>;
193                    regulator-min-microvolt =  <400000>;
194                };
195
196                reg_buck7: buck7 {
197                    regulator-always-on;
198                    regulator-boot-on;
199                    regulator-max-microvolt = <3300000>;
200                    regulator-min-microvolt = <3300000>;
201                };
202
203                reg_vsnvs: vsnvs {
204                    regulator-always-on;
205                    regulator-boot-on;
206                    regulator-max-microvolt = <3300000>;
207                    regulator-min-microvolt = <1800000>;
208                };
209            };
210        };
211    };
212