GNU Linux-libre 4.19.264-gnu1
[releases.git] / Documentation / devicetree / bindings / regulator / qcom,smd-rpm-regulator.txt
1 QCOM SMD RPM REGULATOR
2
3 The Qualcomm RPM over SMD regulator is modelled as a subdevice of the RPM.
4 Because SMD is used as the communication transport mechanism, the RPM resides as
5 a subnode of the SMD.  As such, the SMD-RPM regulator requires that the SMD and
6 RPM nodes be present.
7
8 Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt for
9 information pertaining to the SMD node.
10
11 Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt for
12 information regarding the RPM node.
13
14 == Regulator
15
16 Regulator nodes are identified by their compatible:
17
18 - compatible:
19         Usage: required
20         Value type: <string>
21         Definition: must be one of:
22                     "qcom,rpm-pm8841-regulators"
23                     "qcom,rpm-pm8916-regulators"
24                     "qcom,rpm-pm8941-regulators"
25                     "qcom,rpm-pm8994-regulators"
26                     "qcom,rpm-pm8998-regulators"
27                     "qcom,rpm-pma8084-regulators"
28                     "qcom,rpm-pmi8998-regulators"
29
30 - vdd_s1-supply:
31 - vdd_s2-supply:
32 - vdd_s3-supply:
33 - vdd_s4-supply:
34 - vdd_s5-supply:
35 - vdd_s6-supply:
36 - vdd_s7-supply:
37 - vdd_s8-supply:
38         Usage: optional (pm8841 only)
39         Value type: <phandle>
40         Definition: reference to regulator supplying the input pin, as
41                     described in the data sheet
42
43 - vdd_s1-supply:
44 - vdd_s2-supply:
45 - vdd_s3-supply:
46 - vdd_s4-supply:
47 - vdd_l1_l2_l3-supply:
48 - vdd_l4_l5_l6-supply:
49 - vdd_l7-supply:
50 - vdd_l8_l9_l10_l11_l12_l13_l14_l15_l16_l17_l18-supply:
51         Usage: optional (pm8916 only)
52         Value type: <phandle>
53         Definition: reference to regulator supplying the input pin, as
54                     described in the data sheet
55
56 - vdd_s1-supply:
57 - vdd_s2-supply:
58 - vdd_s3-supply:
59 - vdd_l1_l3-supply:
60 - vdd_l2_lvs1_2_3-supply:
61 - vdd_l4_l11-supply:
62 - vdd_l5_l7-supply:
63 - vdd_l6_l12_l14_l15-supply:
64 - vdd_l8_l16_l18_l19-supply:
65 - vdd_l9_l10_l17_l22-supply:
66 - vdd_l13_l20_l23_l24-supply:
67 - vdd_l21-supply:
68 - vin_5vs-supply:
69         Usage: optional (pm8941 only)
70         Value type: <phandle>
71         Definition: reference to regulator supplying the input pin, as
72                     described in the data sheet
73
74 - vdd_s1-supply:
75 - vdd_s2-supply:
76 - vdd_s3-supply:
77 - vdd_s4-supply:
78 - vdd_s5-supply:
79 - vdd_s6-supply:
80 - vdd_s7-supply:
81 - vdd_s8-supply:
82 - vdd_s9-supply:
83 - vdd_s10-supply:
84 - vdd_s11-supply:
85 - vdd_s12-supply:
86 - vdd_l1-supply:
87 - vdd_l2_l26_l28-supply:
88 - vdd_l3_l11-supply:
89 - vdd_l4_l27_l31-supply:
90 - vdd_l5_l7-supply:
91 - vdd_l6_l12_l32-supply:
92 - vdd_l5_l7-supply:
93 - vdd_l8_l16_l30-supply:
94 - vdd_l9_l10_l18_l22-supply:
95 - vdd_l9_l10_l18_l22-supply:
96 - vdd_l3_l11-supply:
97 - vdd_l6_l12_l32-supply:
98 - vdd_l13_l19_l23_l24-supply:
99 - vdd_l14_l15-supply:
100 - vdd_l14_l15-supply:
101 - vdd_l8_l16_l30-supply:
102 - vdd_l17_l29-supply:
103 - vdd_l9_l10_l18_l22-supply:
104 - vdd_l13_l19_l23_l24-supply:
105 - vdd_l20_l21-supply:
106 - vdd_l20_l21-supply:
107 - vdd_l9_l10_l18_l22-supply:
108 - vdd_l13_l19_l23_l24-supply:
109 - vdd_l13_l19_l23_l24-supply:
110 - vdd_l25-supply:
111 - vdd_l2_l26_l28-supply:
112 - vdd_l4_l27_l31-supply:
113 - vdd_l2_l26_l28-supply:
114 - vdd_l17_l29-supply:
115 - vdd_l8_l16_l30-supply:
116 - vdd_l4_l27_l31-supply:
117 - vdd_l6_l12_l32-supply:
118 - vdd_lvs1_2-supply:
119         Usage: optional (pm8994 only)
120         Value type: <phandle>
121         Definition: reference to regulator supplying the input pin, as
122                     described in the data sheet
123
124 - vdd_s1-supply:
125 - vdd_s2-supply:
126 - vdd_s3-supply:
127 - vdd_s4-supply:
128 - vdd_s5-supply:
129 - vdd_s6-supply:
130 - vdd_s7-supply:
131 - vdd_s8-supply:
132 - vdd_s9-supply:
133 - vdd_s10-supply:
134 - vdd_s11-supply:
135 - vdd_s12-supply:
136 - vdd_s13-supply:
137 - vdd_l1_l27-supply:
138 - vdd_l20_l24-supply:
139 - vdd_l26-supply:
140 - vdd_l2_l8_l17-supply:
141 - vdd_l3_l11-supply:
142 - vdd_l4_l5-supply:
143 - vdd_l6-supply:
144 - vdd_l7_l12_l14_l15-supply:
145 - vdd_l9-supply:
146 - vdd_l10_l23_l25-supply:
147 - vdd_l13_l19_l21-supply:
148 - vdd_l16_l28-supply:
149 - vdd_l18_l22-supply:
150 - vdd_lvs1_lvs2-supply:
151         Usage: optional (pmi8998 only)
152         Value type: <phandle>
153         Definition: reference to regulator supplying the input pin, as
154                     described in the data sheet
155
156 - vdd_s1-supply:
157 - vdd_s2-supply:
158 - vdd_s3-supply:
159 - vdd_s4-supply:
160 - vdd_s5-supply:
161 - vdd_s6-supply:
162 - vdd_s7-supply:
163 - vdd_s8-supply:
164 - vdd_s9-supply:
165 - vdd_s10-supply:
166 - vdd_s11-supply:
167 - vdd_s12-supply:
168 - vdd_l1_l11-supply:
169 - vdd_l2_l3_l4_l27-supply:
170 - vdd_l5_l7-supply:
171 - vdd_l6_l12_l14_l15_l26-supply:
172 - vdd_l8-supply:
173 - vdd_l9_l10_l13_l20_l23_l24-supply:
174 - vdd_l16_l25-supply:
175 - vdd_l17-supply:
176 - vdd_l18-supply:
177 - vdd_l19-supply:
178 - vdd_l21-supply:
179 - vdd_l22-supply:
180         Usage: optional (pma8084 only)
181         Value type: <phandle>
182         Definition: reference to regulator supplying the input pin, as
183                     described in the data sheet
184
185 - vdd_bob-supply:
186         Usage: optional (pmi8998 only)
187         Value type: <phandle>
188         Definition: reference to regulator supplying the input pin, as
189                     described in the data sheet
190
191 The regulator node houses sub-nodes for each regulator within the device. Each
192 sub-node is identified using the node's name, with valid values listed for each
193 of the pmics below.
194
195 pm8841:
196         s1, s2, s3, s4, s5, s6, s7, s8
197
198 pm8916:
199         s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
200         l14, l15, l16, l17, l18
201
202 pm8941:
203         s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
204         l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
205         lvs3, 5vs1, 5vs2
206
207 pm8994:
208         s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3, l4, l5,
209         l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20,
210         l21, l22, l23, l24, l25, l26, l27, l28, l29, l30, l31, l32, lvs1, lvs2
211
212 pm8998:
213         s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, l1, l2, l3, l4,
214         l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
215         l20, l21, l22, l23, l24, l25, l26, l27, l28, lvs1, lvs2
216
217 pma8084:
218         s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3, l4, l5,
219         l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20,
220         l21, l22, l23, l24, l25, l26, l27, lvs1, lvs2, lvs3, lvs4, 5vs1
221
222 pmi8998:
223         bob
224
225 The content of each sub-node is defined by the standard binding for regulators -
226 see regulator.txt.
227
228 = EXAMPLE
229
230         smd {
231                 compatible = "qcom,smd";
232
233                 rpm {
234                         interrupts = <0 168 1>;
235                         qcom,ipc = <&apcs 8 0>;
236                         qcom,smd-edge = <15>;
237
238                         rpm_requests {
239                                 compatible = "qcom,rpm-msm8974";
240                                 qcom,smd-channels = "rpm_requests";
241
242                                 pm8941-regulators {
243                                         compatible = "qcom,rpm-pm8941-regulators";
244                                         vdd_l13_l20_l23_l24-supply = <&pm8941_boost>;
245
246                                         pm8941_s3: s3 {
247                                                 regulator-min-microvolt = <1800000>;
248                                                 regulator-max-microvolt = <1800000>;
249                                         };
250
251                                         pm8941_boost: s4 {
252                                                 regulator-min-microvolt = <5000000>;
253                                                 regulator-max-microvolt = <5000000>;
254                                         };
255
256                                         pm8941_l20: l20 {
257                                                 regulator-min-microvolt = <2950000>;
258                                                 regulator-max-microvolt = <2950000>;
259                                         };
260                                 };
261                         };
262                 };
263         };