Skip to content

Commit d927029

Browse files
committed
PM6125 regulator support
Merge series from Iskren Chernev <[email protected]>: This patch series adds SPMI and SMD regulator support for the PM6125 found on SM4250/SM6115 SoCs from QCom. This code has been tested on: * OnePlus Nord N100 (oneplus,billie2, SoC sm4250) * Redmi 9T (redmi,lemon, SoC sm6115) The main source used for this change is qpnp pm6125 support patch from caf [1]: [1]: https://source.codeaurora.org/quic/la/kernel/msm-5.4/commit/?h=kernel.lnx.5.4.r1-rel&id=d1220daeffaa440ffff0a8c47322eb0033bf54f5 v3: https://lkml.org/lkml/2022/7/31/303 v2: https://lkml.org/lkml/2022/7/26/885 v1: https://lkml.org/lkml/2021/8/28/144 Changes from v3: - fix compilation issue reported by kernel test robot - reorder HFSMPS/LDO+FTSMPS patches - add new slew-rate computation for HFSMPS - add proper pull-down support for new regs - name new regs/vals after HFSMPS instead of FTSMPS - address indentation/newline issues reported by Krzysztof - improve commit messages on SPMI/RPM related patches Changes from v2: - split spmi new regulator support in 2 patches - FTS and LDOs now have set_load and set_pull_down ops - add better commit messages on spmi patches - fix sob header order - fix tested device info (Redmi 9T, NOT Xiaomi 9T) - improve formatting in spmi binding docs - sort alphabetically in smd binding docs - sort alphabetically spmi pmics - sort alphabetically smd pmics Changes from v1: - add dt-bindings - split SPMI patch into new reg types and the new PMIC - add correct supply mapping Iskren Chernev (13): dt-bindings: regulator: qcom_spmi: Improve formatting of if-then blocks dt-bindings: regulator: qcom_spmi: Document PM6125 PMIC dt-bindings: regulator: qcom_smd: Sort compatibles alphabetically dt-bindings: regulator: qcom_smd: Document PM6125 PMIC regulator: qcom_spmi: Add support for HFSMPS regulator type regulator: qcom_spmi: Add support for LDO_510 and FTSMPS regulator: qcom_spmi: Sort pmics alphabetically (part 1) regulator: qcom_spmi: Sort pmics alphabetically (part 2) regulator: qcom_spmi: Add PM6125 PMIC support regulator: qcom_smd: Sort pmics alphabetically (part 1) regulator: qcom_smd: Sort pmics alphabetically (part 2) regulator: qcom_smd: Sort pmics alphabetically (part 3) regulator: qcom_smd: Add PM6125 RPM regulators .../regulator/qcom,smd-rpm-regulator.yaml | 26 +- .../regulator/qcom,spmi-regulator.yaml | 32 ++ drivers/regulator/qcom_smd-regulator.c | 400 ++++++++++-------- drivers/regulator/qcom_spmi-regulator.c | 378 ++++++++++++----- 4 files changed, 551 insertions(+), 285 deletions(-) -- 2.37.1
2 parents 8622817 + 95b5f3e commit d927029

File tree

4 files changed

+551
-285
lines changed

4 files changed

+551
-285
lines changed

Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,17 @@ description:
2424

2525
For mp5496, s2
2626

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+
2738
For pm8226, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10,
2839
l11, l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22, l23, l24, l25,
2940
l26, l27, l28, lvs1
@@ -52,11 +63,6 @@ description:
5263
l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
5364
l20, l21, l22, l23, l24, l25, l26, l27, l28, lvs1, lvs2
5465

55-
For pm660, s1, s2, s3, s4, s5, s6, l1, l2, l3, l5, l6, l7, l8, l9, l10, l22,
56-
l12, l13, l14, l15, l16, l17, l18, l19
57-
58-
For pm660l s1, s2, s3, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, bob
59-
6066
For pma8084, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, l1, l2, l3,
6167
l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18, l19,
6268
l20, l21, l22, l23, l24, l25, l26, l27, lvs1, lvs2, lvs3, lvs4, 5vs1
@@ -68,9 +74,6 @@ description:
6874
For pms405, s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
6975
l12, l13
7076

71-
For pm2250, s1, s2, s3, s4, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
72-
l12, l13, l14, l15, l16, l17, l18, l19, l20, l21, l22
73-
7477
maintainers:
7578
- Andy Gross <[email protected]>
7679
- Bjorn Andersson <[email protected]>
@@ -79,6 +82,10 @@ properties:
7982
compatible:
8083
enum:
8184
- qcom,rpm-mp5496-regulators
85+
- qcom,rpm-pm2250-regulators
86+
- qcom,rpm-pm6125-regulators
87+
- qcom,rpm-pm660-regulators
88+
- qcom,rpm-pm660l-regulators
8289
- qcom,rpm-pm8226-regulators
8390
- qcom,rpm-pm8841-regulators
8491
- qcom,rpm-pm8909-regulators
@@ -88,13 +95,10 @@ properties:
8895
- qcom,rpm-pm8953-regulators
8996
- qcom,rpm-pm8994-regulators
9097
- qcom,rpm-pm8998-regulators
91-
- qcom,rpm-pm660-regulators
92-
- qcom,rpm-pm660l-regulators
9398
- qcom,rpm-pma8084-regulators
9499
- qcom,rpm-pmi8994-regulators
95100
- qcom,rpm-pmi8998-regulators
96101
- qcom,rpm-pms405-regulators
97-
- qcom,rpm-pm2250-regulators
98102

99103
patternProperties:
100104
".*-supply$":

Documentation/devicetree/bindings/regulator/qcom,spmi-regulator.yaml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ maintainers:
1212
properties:
1313
compatible:
1414
enum:
15+
- qcom,pm6125-regulators
1516
- qcom,pm660-regulators
1617
- qcom,pm660l-regulators
1718
- qcom,pm8004-regulators
@@ -107,6 +108,25 @@ required:
107108
- compatible
108109

109110
allOf:
111+
- if:
112+
properties:
113+
compatible:
114+
contains:
115+
enum:
116+
- qcom,pm6125-regulators
117+
then:
118+
properties:
119+
vdd_l1_l7_l17_l18-supply: true
120+
vdd_l2_l3_l4-supply: true
121+
vdd_l5_l15_l19_l20_l21_l22-supply: true
122+
vdd_l6_l8-supply: true
123+
vdd_l9_l11-supply: true
124+
vdd_l10_l13_l14-supply: true
125+
vdd_l12_l16-supply: true
126+
vdd_l23_l24-supply: true
127+
patternProperties:
128+
"^vdd_s[1-8]-supply$": true
129+
110130
- if:
111131
properties:
112132
compatible:
@@ -122,6 +142,7 @@ allOf:
122142
vdd_l8_l9_l10_l11_l12_l13_l14-supply: true
123143
patternProperties:
124144
"^vdd_s[1-6]-supply$": true
145+
125146
- if:
126147
properties:
127148
compatible:
@@ -136,6 +157,7 @@ allOf:
136157
vdd_l4_l6-supply: true
137158
patternProperties:
138159
"^vdd_s[1-5]-supply$": true
160+
139161
- if:
140162
properties:
141163
compatible:
@@ -145,6 +167,7 @@ allOf:
145167
then:
146168
patternProperties:
147169
"^vdd_s[25]-supply$": true
170+
148171
- if:
149172
properties:
150173
compatible:
@@ -154,6 +177,7 @@ allOf:
154177
then:
155178
patternProperties:
156179
"^vdd_s[1-4]-supply$": true
180+
157181
- if:
158182
properties:
159183
compatible:
@@ -173,6 +197,7 @@ allOf:
173197
vdd_lvs1-supply: true
174198
patternProperties:
175199
"^vdd_s[1-5]-supply$": true
200+
176201
- if:
177202
properties:
178203
compatible:
@@ -182,6 +207,7 @@ allOf:
182207
then:
183208
patternProperties:
184209
"^vdd_s[1-8]-supply$": true
210+
185211
- if:
186212
properties:
187213
compatible:
@@ -197,6 +223,7 @@ allOf:
197223
patternProperties:
198224
"^vdd_l[27]-supply$": true
199225
"^vdd_s[1-4]-supply$": true
226+
200227
- if:
201228
properties:
202229
compatible:
@@ -225,6 +252,7 @@ allOf:
225252
vin_5vs-supply: true
226253
patternProperties:
227254
"^vdd_s[1-3]-supply$": true
255+
228256
- if:
229257
properties:
230258
compatible:
@@ -243,6 +271,7 @@ allOf:
243271
vdd_l9_l10_l13_l14_l15_l18-supply: true
244272
patternProperties:
245273
"^vdd_s[1-6]-supply$": true
274+
246275
- if:
247276
properties:
248277
compatible:
@@ -267,6 +296,7 @@ allOf:
267296
vdd_lvs_1_2-supply: true
268297
patternProperties:
269298
"^vdd_s[1-9][0-2]?-supply$": true
299+
270300
- if:
271301
properties:
272302
compatible:
@@ -278,6 +308,7 @@ allOf:
278308
vdd_l1-supply: true
279309
patternProperties:
280310
"^vdd_s[1-3]-supply$": true
311+
281312
- if:
282313
properties:
283314
compatible:
@@ -293,6 +324,7 @@ allOf:
293324
patternProperties:
294325
"^vdd_l[479]-supply$": true
295326
"^vdd_s[1-5]-supply$": true
327+
296328
- if:
297329
properties:
298330
compatible:

0 commit comments

Comments
 (0)