Skip to content

Commit 94838f3

Browse files
lumagUlf Hansson
authored andcommitted
dt-bindings: power: qcom-rpmpd: add generic bindings for RPM power domains
Some of the Qualcomm RPM PD controllers use a common set of indices for power domains. Add generic indices for Qualcomm RPM power domain controllers. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Acked-by: Rob Herring (Arm) <robh@kernel.org> Reviewed-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20250718-rework-rpmhpd-rpmpd-v1-3-eedca108e540@oss.qualcomm.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
1 parent e6e1e3b commit 94838f3

1 file changed

Lines changed: 70 additions & 51 deletions

File tree

include/dt-bindings/power/qcom-rpmpd.h

Lines changed: 70 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,37 @@
66

77
#include <dt-bindings/power/qcom,rpmhpd.h>
88

9+
/* Generic RPM Power Domain Indexes */
10+
#define RPMPD_VDDCX 0
11+
#define RPMPD_VDDCX_AO 1
12+
/* VFC and VFL are mutually exclusive and can not be present on the same platform */
13+
#define RPMPD_VDDCX_VFC 2
14+
#define RPMPD_VDDCX_VFL 2
15+
#define RPMPD_VDDMX 3
16+
#define RPMPD_VDDMX_AO 4
17+
#define RPMPD_VDDMX_VFL 5
18+
#define RPMPD_SSCCX 6
19+
#define RPMPD_SSCCX_VFL 7
20+
#define RPMPD_SSCMX 8
21+
#define RPMPD_SSCMX_VFL 9
22+
23+
/*
24+
* Platform-specific power domain bindings. Don't add new entries here, use
25+
* RPMPD_* above.
26+
*/
27+
928
/* MDM9607 Power Domains */
10-
#define MDM9607_VDDCX 0
11-
#define MDM9607_VDDCX_AO 1
12-
#define MDM9607_VDDCX_VFL 2
13-
#define MDM9607_VDDMX 3
14-
#define MDM9607_VDDMX_AO 4
15-
#define MDM9607_VDDMX_VFL 5
29+
#define MDM9607_VDDCX RPMPD_VDDCX
30+
#define MDM9607_VDDCX_AO RPMPD_VDDCX_AO
31+
#define MDM9607_VDDCX_VFL RPMPD_VDDCX_VFL
32+
#define MDM9607_VDDMX RPMPD_VDDMX
33+
#define MDM9607_VDDMX_AO RPMPD_VDDMX_AO
34+
#define MDM9607_VDDMX_VFL RPMPD_VDDMX_VFL
1635

1736
/* MSM8226 Power Domain Indexes */
18-
#define MSM8226_VDDCX 0
19-
#define MSM8226_VDDCX_AO 1
20-
#define MSM8226_VDDCX_VFC 2
37+
#define MSM8226_VDDCX RPMPD_VDDCX
38+
#define MSM8226_VDDCX_AO RPMPD_VDDCX_AO
39+
#define MSM8226_VDDCX_VFC RPMPD_VDDCX_VFC
2140

2241
/* MSM8939 Power Domains */
2342
#define MSM8939_VDDMDCX 0
@@ -30,11 +49,11 @@
3049
#define MSM8939_VDDMX_AO 7
3150

3251
/* MSM8916 Power Domain Indexes */
33-
#define MSM8916_VDDCX 0
34-
#define MSM8916_VDDCX_AO 1
35-
#define MSM8916_VDDCX_VFC 2
36-
#define MSM8916_VDDMX 3
37-
#define MSM8916_VDDMX_AO 4
52+
#define MSM8916_VDDCX RPMPD_VDDCX
53+
#define MSM8916_VDDCX_AO RPMPD_VDDCX_AO
54+
#define MSM8916_VDDCX_VFC RPMPD_VDDCX_VFC
55+
#define MSM8916_VDDMX RPMPD_VDDMX
56+
#define MSM8916_VDDMX_AO RPMPD_VDDMX_AO
3857

3958
/* MSM8909 Power Domain Indexes */
4059
#define MSM8909_VDDCX MSM8916_VDDCX
@@ -44,11 +63,11 @@
4463
#define MSM8909_VDDMX_AO MSM8916_VDDMX_AO
4564

4665
/* MSM8917 Power Domain Indexes */
47-
#define MSM8917_VDDCX 0
48-
#define MSM8917_VDDCX_AO 1
49-
#define MSM8917_VDDCX_VFL 2
50-
#define MSM8917_VDDMX 3
51-
#define MSM8917_VDDMX_AO 4
66+
#define MSM8917_VDDCX RPMPD_VDDCX
67+
#define MSM8917_VDDCX_AO RPMPD_VDDCX_AO
68+
#define MSM8917_VDDCX_VFL RPMPD_VDDCX_VFL
69+
#define MSM8917_VDDMX RPMPD_VDDMX
70+
#define MSM8917_VDDMX_AO RPMPD_VDDMX_AO
5271

5372
/* MSM8937 Power Domain Indexes */
5473
#define MSM8937_VDDCX MSM8917_VDDCX
@@ -81,12 +100,12 @@
81100
#define MSM8974_VDDGFX_VFC 4
82101

83102
/* MSM8976 Power Domain Indexes */
84-
#define MSM8976_VDDCX 0
85-
#define MSM8976_VDDCX_AO 1
86-
#define MSM8976_VDDCX_VFL 2
87-
#define MSM8976_VDDMX 3
88-
#define MSM8976_VDDMX_AO 4
89-
#define MSM8976_VDDMX_VFL 5
103+
#define MSM8976_VDDCX RPMPD_VDDCX
104+
#define MSM8976_VDDCX_AO RPMPD_VDDCX_AO
105+
#define MSM8976_VDDCX_VFL RPMPD_VDDCX_VFL
106+
#define MSM8976_VDDMX RPMPD_VDDMX
107+
#define MSM8976_VDDMX_AO RPMPD_VDDMX_AO
108+
#define MSM8976_VDDMX_VFL RPMPD_VDDMX_VFL
90109

91110
/* MSM8994 Power Domain Indexes */
92111
#define MSM8994_VDDCX 0
@@ -107,16 +126,16 @@
107126
#define MSM8996_VDDSSCX_VFC 6
108127

109128
/* MSM8998 Power Domain Indexes */
110-
#define MSM8998_VDDCX 0
111-
#define MSM8998_VDDCX_AO 1
112-
#define MSM8998_VDDCX_VFL 2
113-
#define MSM8998_VDDMX 3
114-
#define MSM8998_VDDMX_AO 4
115-
#define MSM8998_VDDMX_VFL 5
116-
#define MSM8998_SSCCX 6
117-
#define MSM8998_SSCCX_VFL 7
118-
#define MSM8998_SSCMX 8
119-
#define MSM8998_SSCMX_VFL 9
129+
#define MSM8998_VDDCX RPMPD_VDDCX
130+
#define MSM8998_VDDCX_AO RPMPD_VDDCX_AO
131+
#define MSM8998_VDDCX_VFL RPMPD_VDDCX_VFL
132+
#define MSM8998_VDDMX RPMPD_VDDMX
133+
#define MSM8998_VDDMX_AO RPMPD_VDDMX_AO
134+
#define MSM8998_VDDMX_VFL RPMPD_VDDMX_VFL
135+
#define MSM8998_SSCCX RPMPD_SSCCX
136+
#define MSM8998_SSCCX_VFL RPMPD_SSCCX_VFL
137+
#define MSM8998_SSCMX RPMPD_SSCMX
138+
#define MSM8998_SSCMX_VFL RPMPD_SSCMX_VFL
120139

121140
/* QCM2290 Power Domains */
122141
#define QCM2290_VDDCX 0
@@ -138,16 +157,16 @@
138157
#define QCS404_LPIMX_VFL 6
139158

140159
/* SDM660 Power Domains */
141-
#define SDM660_VDDCX 0
142-
#define SDM660_VDDCX_AO 1
143-
#define SDM660_VDDCX_VFL 2
144-
#define SDM660_VDDMX 3
145-
#define SDM660_VDDMX_AO 4
146-
#define SDM660_VDDMX_VFL 5
147-
#define SDM660_SSCCX 6
148-
#define SDM660_SSCCX_VFL 7
149-
#define SDM660_SSCMX 8
150-
#define SDM660_SSCMX_VFL 9
160+
#define SDM660_VDDCX RPMPD_VDDCX
161+
#define SDM660_VDDCX_AO RPMPD_VDDCX_AO
162+
#define SDM660_VDDCX_VFL RPMPD_VDDCX_VFL
163+
#define SDM660_VDDMX RPMPD_VDDMX
164+
#define SDM660_VDDMX_AO RPMPD_VDDMX_AO
165+
#define SDM660_VDDMX_VFL RPMPD_VDDMX_VFL
166+
#define SDM660_SSCCX RPMPD_SSCCX
167+
#define SDM660_SSCCX_VFL RPMPD_SSCCX_VFL
168+
#define SDM660_SSCMX RPMPD_SSCMX
169+
#define SDM660_SSCMX_VFL RPMPD_SSCMX_VFL
151170

152171
/* SM6115 Power Domains */
153172
#define SM6115_VDDCX 0
@@ -160,12 +179,12 @@
160179
#define SM6115_VDD_LPI_MX 7
161180

162181
/* SM6125 Power Domains */
163-
#define SM6125_VDDCX 0
164-
#define SM6125_VDDCX_AO 1
165-
#define SM6125_VDDCX_VFL 2
166-
#define SM6125_VDDMX 3
167-
#define SM6125_VDDMX_AO 4
168-
#define SM6125_VDDMX_VFL 5
182+
#define SM6125_VDDCX RPMPD_VDDCX
183+
#define SM6125_VDDCX_AO RPMPD_VDDCX_AO
184+
#define SM6125_VDDCX_VFL RPMPD_VDDCX_VFL
185+
#define SM6125_VDDMX RPMPD_VDDMX
186+
#define SM6125_VDDMX_AO RPMPD_VDDMX_AO
187+
#define SM6125_VDDMX_VFL RPMPD_VDDMX_VFL
169188

170189
/* SM6375 Power Domain Indexes */
171190
#define SM6375_VDDCX 0

0 commit comments

Comments
 (0)