xref: /linux/include/dt-bindings/power/qcom-rpmpd.h (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */
3 
4 #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H
5 #define _DT_BINDINGS_POWER_QCOM_RPMPD_H
6 
7 /* SA8775P Power Domain Indexes */
8 #define SA8775P_CX	0
9 #define SA8775P_CX_AO	1
10 #define SA8775P_DDR	2
11 #define SA8775P_EBI	3
12 #define SA8775P_GFX	4
13 #define SA8775P_LCX	5
14 #define SA8775P_LMX	6
15 #define SA8775P_MMCX	7
16 #define SA8775P_MMCX_AO	8
17 #define SA8775P_MSS	9
18 #define SA8775P_MX	10
19 #define SA8775P_MX_AO	11
20 #define SA8775P_MXC	12
21 #define SA8775P_MXC_AO	13
22 #define SA8775P_NSP0	14
23 #define SA8775P_NSP1	15
24 #define SA8775P_XO	16
25 
26 /* SDM670 Power Domain Indexes */
27 #define SDM670_MX	0
28 #define SDM670_MX_AO	1
29 #define SDM670_CX	2
30 #define SDM670_CX_AO	3
31 #define SDM670_LMX	4
32 #define SDM670_LCX	5
33 #define SDM670_GFX	6
34 #define SDM670_MSS	7
35 
36 /* SDM845 Power Domain Indexes */
37 #define SDM845_EBI	0
38 #define SDM845_MX	1
39 #define SDM845_MX_AO	2
40 #define SDM845_CX	3
41 #define SDM845_CX_AO	4
42 #define SDM845_LMX	5
43 #define SDM845_LCX	6
44 #define SDM845_GFX	7
45 #define SDM845_MSS	8
46 
47 /* SDX55 Power Domain Indexes */
48 #define SDX55_MSS	0
49 #define SDX55_MX	1
50 #define SDX55_CX	2
51 
52 /* SDX65 Power Domain Indexes */
53 #define SDX65_MSS	0
54 #define SDX65_MX	1
55 #define SDX65_MX_AO	2
56 #define SDX65_CX	3
57 #define SDX65_CX_AO	4
58 #define SDX65_MXC	5
59 
60 /* SM6350 Power Domain Indexes */
61 #define SM6350_CX	0
62 #define SM6350_GFX	1
63 #define SM6350_LCX	2
64 #define SM6350_LMX	3
65 #define SM6350_MSS	4
66 #define SM6350_MX	5
67 
68 /* SM6350 Power Domain Indexes */
69 #define SM6375_VDDCX		0
70 #define SM6375_VDDCX_AO	1
71 #define SM6375_VDDCX_VFL	2
72 #define SM6375_VDDMX		3
73 #define SM6375_VDDMX_AO	4
74 #define SM6375_VDDMX_VFL	5
75 #define SM6375_VDDGX		6
76 #define SM6375_VDDGX_AO	7
77 #define SM6375_VDD_LPI_CX	8
78 #define SM6375_VDD_LPI_MX	9
79 
80 /* SM8150 Power Domain Indexes */
81 #define SM8150_MSS	0
82 #define SM8150_EBI	1
83 #define SM8150_LMX	2
84 #define SM8150_LCX	3
85 #define SM8150_GFX	4
86 #define SM8150_MX	5
87 #define SM8150_MX_AO	6
88 #define SM8150_CX	7
89 #define SM8150_CX_AO	8
90 #define SM8150_MMCX	9
91 #define SM8150_MMCX_AO	10
92 
93 /* SA8155P is a special case, kept for backwards compatibility */
94 #define SA8155P_CX	SM8150_CX
95 #define SA8155P_CX_AO	SM8150_CX_AO
96 #define SA8155P_EBI	SM8150_EBI
97 #define SA8155P_GFX	SM8150_GFX
98 #define SA8155P_MSS	SM8150_MSS
99 #define SA8155P_MX	SM8150_MX
100 #define SA8155P_MX_AO	SM8150_MX_AO
101 
102 /* SM8250 Power Domain Indexes */
103 #define SM8250_CX	0
104 #define SM8250_CX_AO	1
105 #define SM8250_EBI	2
106 #define SM8250_GFX	3
107 #define SM8250_LCX	4
108 #define SM8250_LMX	5
109 #define SM8250_MMCX	6
110 #define SM8250_MMCX_AO	7
111 #define SM8250_MX	8
112 #define SM8250_MX_AO	9
113 
114 /* SM8350 Power Domain Indexes */
115 #define SM8350_CX	0
116 #define SM8350_CX_AO	1
117 #define SM8350_EBI	2
118 #define SM8350_GFX	3
119 #define SM8350_LCX	4
120 #define SM8350_LMX	5
121 #define SM8350_MMCX	6
122 #define SM8350_MMCX_AO	7
123 #define SM8350_MX	8
124 #define SM8350_MX_AO	9
125 #define SM8350_MXC	10
126 #define SM8350_MXC_AO	11
127 #define SM8350_MSS	12
128 
129 /* SM8450 Power Domain Indexes */
130 #define SM8450_CX	0
131 #define SM8450_CX_AO	1
132 #define SM8450_EBI	2
133 #define SM8450_GFX	3
134 #define SM8450_LCX	4
135 #define SM8450_LMX	5
136 #define SM8450_MMCX	6
137 #define SM8450_MMCX_AO	7
138 #define SM8450_MX	8
139 #define SM8450_MX_AO	9
140 #define SM8450_MXC	10
141 #define SM8450_MXC_AO	11
142 #define SM8450_MSS	12
143 
144 /* SM8550 Power Domain Indexes */
145 #define SM8550_CX	0
146 #define SM8550_CX_AO	1
147 #define SM8550_EBI	2
148 #define SM8550_GFX	3
149 #define SM8550_LCX	4
150 #define SM8550_LMX	5
151 #define SM8550_MMCX	6
152 #define SM8550_MMCX_AO	7
153 #define SM8550_MX	8
154 #define SM8550_MX_AO	9
155 #define SM8550_MXC	10
156 #define SM8550_MXC_AO	11
157 #define SM8550_MSS	12
158 #define SM8550_NSP	13
159 
160 /* QDU1000/QRU1000 Power Domain Indexes */
161 #define QDU1000_EBI	0
162 #define QDU1000_MSS	1
163 #define QDU1000_CX	2
164 #define QDU1000_MX	3
165 
166 /* SC7180 Power Domain Indexes */
167 #define SC7180_CX	0
168 #define SC7180_CX_AO	1
169 #define SC7180_GFX	2
170 #define SC7180_MX	3
171 #define SC7180_MX_AO	4
172 #define SC7180_LMX	5
173 #define SC7180_LCX	6
174 #define SC7180_MSS	7
175 
176 /* SC7280 Power Domain Indexes */
177 #define SC7280_CX	0
178 #define SC7280_CX_AO	1
179 #define SC7280_EBI	2
180 #define SC7280_GFX	3
181 #define SC7280_MX	4
182 #define SC7280_MX_AO	5
183 #define SC7280_LMX	6
184 #define SC7280_LCX	7
185 #define SC7280_MSS	8
186 
187 /* SC8180X Power Domain Indexes */
188 #define SC8180X_CX	0
189 #define SC8180X_CX_AO	1
190 #define SC8180X_EBI	2
191 #define SC8180X_GFX	3
192 #define SC8180X_LCX	4
193 #define SC8180X_LMX	5
194 #define SC8180X_MMCX	6
195 #define SC8180X_MMCX_AO	7
196 #define SC8180X_MSS	8
197 #define SC8180X_MX	9
198 #define SC8180X_MX_AO	10
199 
200 /* SC8280XP Power Domain Indexes */
201 #define SC8280XP_CX		0
202 #define SC8280XP_CX_AO		1
203 #define SC8280XP_DDR		2
204 #define SC8280XP_EBI		3
205 #define SC8280XP_GFX		4
206 #define SC8280XP_LCX		5
207 #define SC8280XP_LMX		6
208 #define SC8280XP_MMCX		7
209 #define SC8280XP_MMCX_AO	8
210 #define SC8280XP_MSS		9
211 #define SC8280XP_MX		10
212 #define SC8280XP_MXC		12
213 #define SC8280XP_MX_AO		11
214 #define SC8280XP_NSP		13
215 #define SC8280XP_QPHY		14
216 #define SC8280XP_XO		15
217 
218 /* SDM845 Power Domain performance levels */
219 #define RPMH_REGULATOR_LEVEL_RETENTION		16
220 #define RPMH_REGULATOR_LEVEL_MIN_SVS		48
221 #define RPMH_REGULATOR_LEVEL_LOW_SVS_D3		50
222 #define RPMH_REGULATOR_LEVEL_LOW_SVS_D2		52
223 #define RPMH_REGULATOR_LEVEL_LOW_SVS_D1		56
224 #define RPMH_REGULATOR_LEVEL_LOW_SVS_D0		60
225 #define RPMH_REGULATOR_LEVEL_LOW_SVS		64
226 #define RPMH_REGULATOR_LEVEL_LOW_SVS_P1		72
227 #define RPMH_REGULATOR_LEVEL_LOW_SVS_L1		80
228 #define RPMH_REGULATOR_LEVEL_LOW_SVS_L2		96
229 #define RPMH_REGULATOR_LEVEL_SVS		128
230 #define RPMH_REGULATOR_LEVEL_SVS_L0		144
231 #define RPMH_REGULATOR_LEVEL_SVS_L1		192
232 #define RPMH_REGULATOR_LEVEL_SVS_L2		224
233 #define RPMH_REGULATOR_LEVEL_NOM		256
234 #define RPMH_REGULATOR_LEVEL_NOM_L0		288
235 #define RPMH_REGULATOR_LEVEL_NOM_L1		320
236 #define RPMH_REGULATOR_LEVEL_NOM_L2		336
237 #define RPMH_REGULATOR_LEVEL_TURBO		384
238 #define RPMH_REGULATOR_LEVEL_TURBO_L0		400
239 #define RPMH_REGULATOR_LEVEL_TURBO_L1		416
240 #define RPMH_REGULATOR_LEVEL_TURBO_L2		432
241 #define RPMH_REGULATOR_LEVEL_TURBO_L3		448
242 #define RPMH_REGULATOR_LEVEL_TURBO_L4		452
243 #define RPMH_REGULATOR_LEVEL_SUPER_TURBO 	464
244 #define RPMH_REGULATOR_LEVEL_SUPER_TURBO_NO_CPR	480
245 
246 /* MDM9607 Power Domains */
247 #define MDM9607_VDDCX		0
248 #define MDM9607_VDDCX_AO	1
249 #define MDM9607_VDDCX_VFL	2
250 #define MDM9607_VDDMX		3
251 #define MDM9607_VDDMX_AO	4
252 #define MDM9607_VDDMX_VFL	5
253 
254 /* MSM8226 Power Domain Indexes */
255 #define MSM8226_VDDCX		0
256 #define MSM8226_VDDCX_AO	1
257 #define MSM8226_VDDCX_VFC	2
258 
259 /* MSM8939 Power Domains */
260 #define MSM8939_VDDMDCX		0
261 #define MSM8939_VDDMDCX_AO	1
262 #define MSM8939_VDDMDCX_VFC	2
263 #define MSM8939_VDDCX		3
264 #define MSM8939_VDDCX_AO	4
265 #define MSM8939_VDDCX_VFC	5
266 #define MSM8939_VDDMX		6
267 #define MSM8939_VDDMX_AO	7
268 
269 /* MSM8916 Power Domain Indexes */
270 #define MSM8916_VDDCX		0
271 #define MSM8916_VDDCX_AO	1
272 #define MSM8916_VDDCX_VFC	2
273 #define MSM8916_VDDMX		3
274 #define MSM8916_VDDMX_AO	4
275 
276 /* MSM8909 Power Domain Indexes */
277 #define MSM8909_VDDCX		MSM8916_VDDCX
278 #define MSM8909_VDDCX_AO	MSM8916_VDDCX_AO
279 #define MSM8909_VDDCX_VFC	MSM8916_VDDCX_VFC
280 #define MSM8909_VDDMX		MSM8916_VDDMX
281 #define MSM8909_VDDMX_AO	MSM8916_VDDMX_AO
282 
283 /* MSM8917 Power Domain Indexes */
284 #define MSM8917_VDDCX		0
285 #define MSM8917_VDDCX_AO	1
286 #define MSM8917_VDDCX_VFL	2
287 #define MSM8917_VDDMX		3
288 #define MSM8917_VDDMX_AO	4
289 
290 /* MSM8937 Power Domain Indexes */
291 #define MSM8937_VDDCX		MSM8917_VDDCX
292 #define MSM8937_VDDCX_AO	MSM8917_VDDCX_AO
293 #define MSM8937_VDDCX_VFL	MSM8917_VDDCX_VFL
294 #define MSM8937_VDDMX		MSM8917_VDDMX
295 #define MSM8937_VDDMX_AO	MSM8917_VDDMX_AO
296 
297 /* QM215 Power Domain Indexes */
298 #define QM215_VDDCX		MSM8917_VDDCX
299 #define QM215_VDDCX_AO		MSM8917_VDDCX_AO
300 #define QM215_VDDCX_VFL		MSM8917_VDDCX_VFL
301 #define QM215_VDDMX		MSM8917_VDDMX
302 #define QM215_VDDMX_AO		MSM8917_VDDMX_AO
303 
304 /* MSM8953 Power Domain Indexes */
305 #define MSM8953_VDDMD		0
306 #define MSM8953_VDDMD_AO	1
307 #define MSM8953_VDDCX		2
308 #define MSM8953_VDDCX_AO	3
309 #define MSM8953_VDDCX_VFL	4
310 #define MSM8953_VDDMX		5
311 #define MSM8953_VDDMX_AO	6
312 
313 /* MSM8974 Power Domain Indexes */
314 #define MSM8974_VDDCX		0
315 #define MSM8974_VDDCX_AO	1
316 #define MSM8974_VDDCX_VFC	2
317 #define MSM8974_VDDGFX		3
318 #define MSM8974_VDDGFX_VFC	4
319 
320 /* MSM8976 Power Domain Indexes */
321 #define MSM8976_VDDCX		0
322 #define MSM8976_VDDCX_AO	1
323 #define MSM8976_VDDCX_VFL	2
324 #define MSM8976_VDDMX		3
325 #define MSM8976_VDDMX_AO	4
326 #define MSM8976_VDDMX_VFL	5
327 
328 /* MSM8994 Power Domain Indexes */
329 #define MSM8994_VDDCX		0
330 #define MSM8994_VDDCX_AO	1
331 #define MSM8994_VDDCX_VFC	2
332 #define MSM8994_VDDMX		3
333 #define MSM8994_VDDMX_AO	4
334 #define MSM8994_VDDGFX		5
335 #define MSM8994_VDDGFX_VFC	6
336 
337 /* MSM8996 Power Domain Indexes */
338 #define MSM8996_VDDCX		0
339 #define MSM8996_VDDCX_AO	1
340 #define MSM8996_VDDCX_VFC	2
341 #define MSM8996_VDDMX		3
342 #define MSM8996_VDDMX_AO	4
343 #define MSM8996_VDDSSCX		5
344 #define MSM8996_VDDSSCX_VFC	6
345 
346 /* MSM8998 Power Domain Indexes */
347 #define MSM8998_VDDCX		0
348 #define MSM8998_VDDCX_AO	1
349 #define MSM8998_VDDCX_VFL	2
350 #define MSM8998_VDDMX		3
351 #define MSM8998_VDDMX_AO	4
352 #define MSM8998_VDDMX_VFL	5
353 #define MSM8998_SSCCX		6
354 #define MSM8998_SSCCX_VFL	7
355 #define MSM8998_SSCMX		8
356 #define MSM8998_SSCMX_VFL	9
357 
358 /* QCS404 Power Domains */
359 #define QCS404_VDDMX		0
360 #define QCS404_VDDMX_AO		1
361 #define QCS404_VDDMX_VFL	2
362 #define QCS404_LPICX		3
363 #define QCS404_LPICX_VFL	4
364 #define QCS404_LPIMX		5
365 #define QCS404_LPIMX_VFL	6
366 
367 /* SDM660 Power Domains */
368 #define SDM660_VDDCX		0
369 #define SDM660_VDDCX_AO		1
370 #define SDM660_VDDCX_VFL	2
371 #define SDM660_VDDMX		3
372 #define SDM660_VDDMX_AO		4
373 #define SDM660_VDDMX_VFL	5
374 #define SDM660_SSCCX		6
375 #define SDM660_SSCCX_VFL	7
376 #define SDM660_SSCMX		8
377 #define SDM660_SSCMX_VFL	9
378 
379 /* SM6115 Power Domains */
380 #define SM6115_VDDCX		0
381 #define SM6115_VDDCX_AO		1
382 #define SM6115_VDDCX_VFL	2
383 #define SM6115_VDDMX		3
384 #define SM6115_VDDMX_AO		4
385 #define SM6115_VDDMX_VFL	5
386 #define SM6115_VDD_LPI_CX	6
387 #define SM6115_VDD_LPI_MX	7
388 
389 /* SM6125 Power Domains */
390 #define SM6125_VDDCX		0
391 #define SM6125_VDDCX_AO		1
392 #define SM6125_VDDCX_VFL	2
393 #define SM6125_VDDMX		3
394 #define SM6125_VDDMX_AO		4
395 #define SM6125_VDDMX_VFL	5
396 
397 /* QCM2290 Power Domains */
398 #define QCM2290_VDDCX		0
399 #define QCM2290_VDDCX_AO	1
400 #define QCM2290_VDDCX_VFL	2
401 #define QCM2290_VDDMX		3
402 #define QCM2290_VDDMX_AO	4
403 #define QCM2290_VDDMX_VFL	5
404 #define QCM2290_VDD_LPI_CX	6
405 #define QCM2290_VDD_LPI_MX	7
406 
407 /* RPM SMD Power Domain performance levels */
408 #define RPM_SMD_LEVEL_RETENTION       16
409 #define RPM_SMD_LEVEL_RETENTION_PLUS  32
410 #define RPM_SMD_LEVEL_MIN_SVS         48
411 #define RPM_SMD_LEVEL_LOW_SVS         64
412 #define RPM_SMD_LEVEL_SVS             128
413 #define RPM_SMD_LEVEL_SVS_PLUS        192
414 #define RPM_SMD_LEVEL_NOM             256
415 #define RPM_SMD_LEVEL_NOM_PLUS        320
416 #define RPM_SMD_LEVEL_TURBO           384
417 #define RPM_SMD_LEVEL_TURBO_NO_CPR    416
418 #define RPM_SMD_LEVEL_TURBO_HIGH      448
419 #define RPM_SMD_LEVEL_BINNING         512
420 
421 #endif
422