Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / regulator / qcom,smd-rpm-regulator.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/regulator/qcom,smd-rpm-regulator.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: QCOM SMD RPM REGULATOR
8
9 description:
10   The Qualcomm RPM over SMD regulator is modelled as a subdevice of the RPM.
11   Because SMD is used as the communication transport mechanism, the RPM
12   resides as a subnode of the SMD.  As such, the SMD-RPM regulator requires
13   that the SMD and RPM nodes be present.
14
15   Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml for
16   information pertaining to the SMD node.
17
18   Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
19   for information regarding the RPM node.
20
21   The regulator node houses sub-nodes for each regulator within the device.
22   Each sub-node is identified using the node's name, with valid values listed
23   for each of the pmics below.
24
25   For mp5496, s1, s2
26
27   For pm2250, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
28   l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22
29
30   For pm6125 s1, s2, s3, s4, s5, s6, s7, s8, l1, l2, l3, l5, l6, l7, l8, l9,
31   l10, l22, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24
32
33   For pm660, s1, s2, s3, s4, s5, s6, l1, l2, l3, l5, l6, l7, l8, l9, l10, l22,
34   l12, l13, l14, l15, l16, l17, l18, l19
35
36   For pm660l s1, s2, s3, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, bob
37
38   For pm8226, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10,
39   l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, l25,
40   l26, l27, l28, lvs1
41
42   For pm8841, s1, s2, s3, s4, s5, s6, s7, s8
43
44   For pm8909, s1, s2, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13,
45   l14, l15, l17, l18
46
47   For pm8916, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
48   l12, l13, l14, l15, l16, l17, l18
49
50   For pm8937, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10,
51   l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23
52
53   For pm8941, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
54   l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
55   lvs3, 5vs1, 5vs2
56
57   For pm8950 and pm8953, s1, s2, s3, s4, s5, s6, s7, l1, l2, l3, l4, l5, l6,
58   l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22,
59   l23
60
61   For pm8994, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3,
62   l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
63   l20, l21, l22, l23, l24, l25, l26, l27, l28, l29, l30, l31, l32, lvs1, lvs2
64
65   For pm8998, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, l1, l2,
66   l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
67   l20, l21, l22, l23, l24, l25, l26, l27, l28, lvs1, lvs2
68
69   For pma8084, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3,
70   l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
71   l20, l21, l22, l23, l24, l25, l26, l27, lvs1, lvs2, lvs3, lvs4, 5vs1
72
73   For pmi8994, s1, s2, s3, boost-bypass
74
75   For pmi8998, bob
76
77   For pmr735a, s1, s2, s3, l1, l2, l3, l4, l5, l6, l7
78
79   For pms405, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
80   l12, l13
81
82 maintainers:
83   - Andy Gross <agross@kernel.org>
84   - Bjorn Andersson <bjorn.andersson@linaro.org>
85
86 properties:
87   compatible:
88     enum:
89       - qcom,rpm-mp5496-regulators
90       - qcom,rpm-pm2250-regulators
91       - qcom,rpm-pm6125-regulators
92       - qcom,rpm-pm660-regulators
93       - qcom,rpm-pm660l-regulators
94       - qcom,rpm-pm8226-regulators
95       - qcom,rpm-pm8841-regulators
96       - qcom,rpm-pm8909-regulators
97       - qcom,rpm-pm8916-regulators
98       - qcom,rpm-pm8937-regulators
99       - qcom,rpm-pm8941-regulators
100       - qcom,rpm-pm8950-regulators
101       - qcom,rpm-pm8953-regulators
102       - qcom,rpm-pm8994-regulators
103       - qcom,rpm-pm8998-regulators
104       - qcom,rpm-pma8084-regulators
105       - qcom,rpm-pmi8994-regulators
106       - qcom,rpm-pmi8998-regulators
107       - qcom,rpm-pmr735a-regulators
108       - qcom,rpm-pms405-regulators
109
110 patternProperties:
111   ".*-supply$":
112     description: Input supply phandle(s) for this node
113
114   "^((s|l|lvs|5vs)[0-9]*)|(boost-bypass)|(bob)$":
115     description: List of regulators and its properties
116     $ref: regulator.yaml#
117     unevaluatedProperties: false
118
119 additionalProperties: false
120
121 required:
122   - compatible
123
124 examples:
125   - |
126     pm8941-regulators {
127         compatible = "qcom,rpm-pm8941-regulators";
128         vdd_l13_l20_l23_l24-supply = <&pm8941_boost>;
129
130         pm8941_s3: s3 {
131             regulator-min-microvolt = <1800000>;
132             regulator-max-microvolt = <1800000>;
133         };
134
135         pm8941_boost: s4 {
136             regulator-min-microvolt = <5000000>;
137             regulator-max-microvolt = <5000000>;
138         };
139
140         pm8941_l20: l20 {
141             regulator-min-microvolt = <2950000>;
142             regulator-max-microvolt = <2950000>;
143         };
144     };
145 ...