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