GNU Linux-libre 5.19-rc6-gnu
[releases.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, s2
26
27   For pm8226, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10,
28   l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, l25,
29   l26, l27, l28, lvs1
30
31   For pm8841, s1, s2, s3, s4, s5, s6, s7, s8
32
33   For pm8916, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
34   l12, l13, l14, l15, l16, l17, l18
35
36   For pm8941, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
37   l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, lvs1, lvs2,
38   lvs3, 5vs1, 5vs2
39
40   For pm8950 and pm8953, s1, s2, s3, s4, s5, s6, s7, l1, l2, l3, l4, l5, l6,
41   l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22,
42   l23
43
44   For pm8994, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3,
45   l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
46   l20, l21, l22, l23, l24, l25, l26, l27, l28, l29, l30, l31, l32, lvs1, lvs2
47
48   For pm8998, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, l1, l2,
49   l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
50   l20, l21, l22, l23, l24, l25, l26, l27, l28, lvs1, lvs2
51
52   For pm660, s1, s2, s3, s4, s5, s6, l1, l2, l3, l5, l6, l7, l8, l9, l10, l22,
53   l12, l13, l14, l15, l16, l17, l18, l19
54
55   For pm660l s1, s2, s3, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, bob
56
57   For pma8084, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3,
58   l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
59   l20, l21, l22, l23, l24, l25, l26, l27, lvs1, lvs2, lvs3, lvs4, 5vs1
60
61   For pmi8994, s1, s2, s3, boost-bypass
62
63   For pmi8998, bob
64
65   For pms405, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
66   l12, l13
67
68   For pm2250, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
69   l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22
70
71 maintainers:
72   - Andy Gross <agross@kernel.org>
73   - Bjorn Andersson <bjorn.andersson@linaro.org>
74
75 properties:
76   compatible:
77     enum:
78       - qcom,rpm-mp5496-regulators
79       - qcom,rpm-pm8226-regulators
80       - qcom,rpm-pm8841-regulators
81       - qcom,rpm-pm8916-regulators
82       - qcom,rpm-pm8941-regulators
83       - qcom,rpm-pm8950-regulators
84       - qcom,rpm-pm8953-regulators
85       - qcom,rpm-pm8994-regulators
86       - qcom,rpm-pm8998-regulators
87       - qcom,rpm-pm660-regulators
88       - qcom,rpm-pm660l-regulators
89       - qcom,rpm-pma8084-regulators
90       - qcom,rpm-pmi8994-regulators
91       - qcom,rpm-pmi8998-regulators
92       - qcom,rpm-pms405-regulators
93       - qcom,rpm-pm2250-regulators
94
95 patternProperties:
96   ".*-supply$":
97     description: Input supply phandle(s) for this node
98
99   "^((s|l|lvs|5vs)[0-9]*)|(boost-bypass)|(bob)$":
100     description: List of regulators and its properties
101     $ref: regulator.yaml#
102
103 additionalProperties: false
104
105 required:
106   - compatible
107
108 examples:
109   - |
110     pm8941-regulators {
111         compatible = "qcom,rpm-pm8941-regulators";
112         vdd_l13_l20_l23_l24-supply = <&pm8941_boost>;
113
114         pm8941_s3: s3 {
115             regulator-min-microvolt = <1800000>;
116             regulator-max-microvolt = <1800000>;
117         };
118
119         pm8941_boost: s4 {
120             regulator-min-microvolt = <5000000>;
121             regulator-max-microvolt = <5000000>;
122         };
123
124         pm8941_l20: l20 {
125             regulator-min-microvolt = <2950000>;
126             regulator-max-microvolt = <2950000>;
127         };
128     };
129 ...