blob: 82557e174258730f9b2122416bff27fc2932ac03 [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"
25
26- vdd_s1-supply:
27- vdd_s2-supply:
28- vdd_s3-supply:
29- vdd_s4-supply:
30- vdd_s5-supply:
31- vdd_s6-supply:
32- vdd_s7-supply:
33- vdd_s8-supply:
34 Usage: optional (pm8841 only)
35 Value type: <phandle>
36 Definition: reference to regulator supplying the input pin, as
37 described in the data sheet
38
39- vdd_s1-supply:
40- vdd_s2-supply:
41- vdd_s3-supply:
Andy Gross57d65672015-12-14 23:30:44 -060042- vdd_s4-supply:
43- vdd_l1_l2_l3-supply:
44- vdd_l4_l5_l6-supply:
45- vdd_l7-supply:
46- vdd_l8_l9_l10_l11_l12_l13_l14_l15_l16_l17_l18-supply:
47 Usage: optional (pm8916 only)
48 Value type: <phandle>
49 Definition: reference to regulator supplying the input pin, as
50 described in the data sheet
51
52- vdd_s1-supply:
53- vdd_s2-supply:
54- vdd_s3-supply:
Bjorn Anderssonba682272015-07-27 20:20:31 -070055- vdd_l1_l3-supply:
56- vdd_l2_lvs1_2_3-supply:
57- vdd_l4_l11-supply:
58- vdd_l5_l7-supply:
59- vdd_l6_l12_l14_l15-supply:
60- vdd_l8_l16_l18_l19-supply:
61- vdd_l9_l10_l17_l22-supply:
62- vdd_l13_l20_l23_l24-supply:
63- vdd_l21-supply:
64- vin_5vs-supply:
65 Usage: optional (pm8941 only)
66 Value type: <phandle>
67 Definition: reference to regulator supplying the input pin, as
68 described in the data sheet
69
70The regulator node houses sub-nodes for each regulator within the device. Each
71sub-node is identified using the node's name, with valid values listed for each
72of the pmics below.
73
74pm8841:
75 s1, s2, s3, s4, s5, s6, s7, s8
76
Andy Gross57d65672015-12-14 23:30:44 -060077pm8916:
78 s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
79 l14, l15, l16, l17, l18
80
Bjorn Anderssonba682272015-07-27 20:20:31 -070081pm8941:
82 s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
83 l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
84 lvs3, 5vs1, 5vs2
85
86The content of each sub-node is defined by the standard binding for regulators -
87see regulator.txt.
88
89= EXAMPLE
90
91 smd {
92 compatible = "qcom,smd";
93
94 rpm {
95 interrupts = <0 168 1>;
96 qcom,ipc = <&apcs 8 0>;
97 qcom,smd-edge = <15>;
98
99 rpm_requests {
100 compatible = "qcom,rpm-msm8974";
101 qcom,smd-channels = "rpm_requests";
102
103 pm8941-regulators {
104 compatible = "qcom,rpm-pm8941-regulators";
105 vdd_l13_l20_l23_l24-supply = <&pm8941_boost>;
106
107 pm8941_s3: s3 {
108 regulator-min-microvolt = <1800000>;
109 regulator-max-microvolt = <1800000>;
110 };
111
112 pm8941_boost: s4 {
113 regulator-min-microvolt = <5000000>;
114 regulator-max-microvolt = <5000000>;
115 };
116
117 pm8941_l20: l20 {
118 regulator-min-microvolt = <2950000>;
119 regulator-max-microvolt = <2950000>;
120 };
121 };
122 };
123 };
124 };