Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[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,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
107 required:
108   - compatible
109   - reg
110   - regulators
111
112 additionalProperties: false
113
114 examples:
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     };