blob: 1f8d6f84b657d3f63257b9f0d999ba07732cbff0 [file] [log] [blame]
Andy Gross7a400582015-12-14 23:30:43 -06001QCOM SMD RPM REGULATOR
Bjorn Anderssonba682272015-07-27 20:20:31 -07002
Andy Gross7a400582015-12-14 23:30:43 -06003The 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.
Bjorn Anderssonba682272015-07-27 20:20:31 -07007
Andy Gross7a400582015-12-14 23:30:43 -06008Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt for
9information pertaining to the SMD node.
Bjorn Anderssonba682272015-07-27 20:20:31 -070010
Andy Gross7a400582015-12-14 23:30:43 -060011Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.txt for
12information regarding the RPM node.
Bjorn Anderssonba682272015-07-27 20:20:31 -070013
Andy Gross7a400582015-12-14 23:30:43 -060014== Regulator
Bjorn Anderssonba682272015-07-27 20:20:31 -070015
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"
Andy Gross57d65672015-12-14 23:30:44 -060023 "qcom,rpm-pm8916-regulators"
Bjorn Anderssonba682272015-07-27 20:20:31 -070024 "qcom,rpm-pm8941-regulators"
Andy Grossee01d0c2015-12-14 23:30:45 -060025 "qcom,rpm-pma8084-regulators"
Bjorn Anderssonba682272015-07-27 20:20:31 -070026
27- vdd_s1-supply:
28- vdd_s2-supply:
29- vdd_s3-supply:
30- vdd_s4-supply:
31- vdd_s5-supply:
32- vdd_s6-supply:
33- vdd_s7-supply:
34- vdd_s8-supply:
35 Usage: optional (pm8841 only)
36 Value type: <phandle>
37 Definition: reference to regulator supplying the input pin, as
38 described in the data sheet
39
40- vdd_s1-supply:
41- vdd_s2-supply:
42- vdd_s3-supply:
Andy Gross57d65672015-12-14 23:30:44 -060043- vdd_s4-supply:
44- vdd_l1_l2_l3-supply:
45- vdd_l4_l5_l6-supply:
46- vdd_l7-supply:
47- vdd_l8_l9_l10_l11_l12_l13_l14_l15_l16_l17_l18-supply:
48 Usage: optional (pm8916 only)
49 Value type: <phandle>
50 Definition: reference to regulator supplying the input pin, as
51 described in the data sheet
52
53- vdd_s1-supply:
54- vdd_s2-supply:
55- vdd_s3-supply:
Bjorn Anderssonba682272015-07-27 20:20:31 -070056- vdd_l1_l3-supply:
57- vdd_l2_lvs1_2_3-supply:
58- vdd_l4_l11-supply:
59- vdd_l5_l7-supply:
60- vdd_l6_l12_l14_l15-supply:
61- vdd_l8_l16_l18_l19-supply:
62- vdd_l9_l10_l17_l22-supply:
63- vdd_l13_l20_l23_l24-supply:
64- vdd_l21-supply:
65- vin_5vs-supply:
66 Usage: optional (pm8941 only)
67 Value type: <phandle>
68 Definition: reference to regulator supplying the input pin, as
69 described in the data sheet
70
Andy Grossee01d0c2015-12-14 23:30:45 -060071- vdd_s1-supply:
72- vdd_s2-supply:
73- vdd_s3-supply:
74- vdd_s4-supply:
75- vdd_s5-supply:
76- vdd_s6-supply:
77- vdd_s7-supply:
78- vdd_s8-supply:
79- vdd_s9-supply:
80- vdd_s10-supply:
81- vdd_s11-supply:
82- vdd_s12-supply:
83- vdd_l1_l11-supply:
84- vdd_l2_l3_l4_l27-supply:
85- vdd_l5_l7-supply:
86- vdd_l6_l12_l14_l15_l26-supply:
87- vdd_l8-supply:
88- vdd_l9_l10_l13_l20_l23_l24-supply:
89- vdd_l16_l25-supply:
90- vdd_l17-supply:
91- vdd_l18-supply:
92- vdd_l19-supply:
93- vdd_l21-supply:
94- vdd_l22-supply:
95 Usage: optional (pma8084 only)
96 Value type: <phandle>
97 Definition: reference to regulator supplying the input pin, as
98 described in the data sheet
99
Bjorn Anderssonba682272015-07-27 20:20:31 -0700100The regulator node houses sub-nodes for each regulator within the device. Each
101sub-node is identified using the node's name, with valid values listed for each
102of the pmics below.
103
104pm8841:
105 s1, s2, s3, s4, s5, s6, s7, s8
106
Andy Gross57d65672015-12-14 23:30:44 -0600107pm8916:
108 s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
109 l14, l15, l16, l17, l18
110
Bjorn Anderssonba682272015-07-27 20:20:31 -0700111pm8941:
112 s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
113 l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
114 lvs3, 5vs1, 5vs2
115
Andy Grossee01d0c2015-12-14 23:30:45 -0600116pma8084:
117 s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3, l4, l5,
118 l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20,
119 l21, l22, l23, l24, l25, l26, l27, lvs1, lvs2, lvs3, lvs4, 5vs1
120
Bjorn Anderssonba682272015-07-27 20:20:31 -0700121The content of each sub-node is defined by the standard binding for regulators -
122see regulator.txt.
123
124= EXAMPLE
125
126 smd {
127 compatible = "qcom,smd";
128
129 rpm {
130 interrupts = <0 168 1>;
131 qcom,ipc = <&apcs 8 0>;
132 qcom,smd-edge = <15>;
133
134 rpm_requests {
135 compatible = "qcom,rpm-msm8974";
136 qcom,smd-channels = "rpm_requests";
137
138 pm8941-regulators {
139 compatible = "qcom,rpm-pm8941-regulators";
140 vdd_l13_l20_l23_l24-supply = <&pm8941_boost>;
141
142 pm8941_s3: s3 {
143 regulator-min-microvolt = <1800000>;
144 regulator-max-microvolt = <1800000>;
145 };
146
147 pm8941_boost: s4 {
148 regulator-min-microvolt = <5000000>;
149 regulator-max-microvolt = <5000000>;
150 };
151
152 pm8941_l20: l20 {
153 regulator-min-microvolt = <2950000>;
154 regulator-max-microvolt = <2950000>;
155 };
156 };
157 };
158 };
159 };