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