Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.6.
  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_D2		52
222#define RPMH_REGULATOR_LEVEL_LOW_SVS_D1		56
223#define RPMH_REGULATOR_LEVEL_LOW_SVS_D0		60
224#define RPMH_REGULATOR_LEVEL_LOW_SVS		64
225#define RPMH_REGULATOR_LEVEL_LOW_SVS_P1		72
226#define RPMH_REGULATOR_LEVEL_LOW_SVS_L1		80
227#define RPMH_REGULATOR_LEVEL_LOW_SVS_L2		96
228#define RPMH_REGULATOR_LEVEL_SVS		128
229#define RPMH_REGULATOR_LEVEL_SVS_L0		144
230#define RPMH_REGULATOR_LEVEL_SVS_L1		192
231#define RPMH_REGULATOR_LEVEL_SVS_L2		224
232#define RPMH_REGULATOR_LEVEL_NOM		256
233#define RPMH_REGULATOR_LEVEL_NOM_L0		288
234#define RPMH_REGULATOR_LEVEL_NOM_L1		320
235#define RPMH_REGULATOR_LEVEL_NOM_L2		336
236#define RPMH_REGULATOR_LEVEL_TURBO		384
237#define RPMH_REGULATOR_LEVEL_TURBO_L0		400
238#define RPMH_REGULATOR_LEVEL_TURBO_L1		416
239#define RPMH_REGULATOR_LEVEL_TURBO_L2		432
240#define RPMH_REGULATOR_LEVEL_TURBO_L3		448
241#define RPMH_REGULATOR_LEVEL_SUPER_TURBO 	464
242#define RPMH_REGULATOR_LEVEL_SUPER_TURBO_NO_CPR	480
243
244/* MDM9607 Power Domains */
245#define MDM9607_VDDCX		0
246#define MDM9607_VDDCX_AO	1
247#define MDM9607_VDDCX_VFL	2
248#define MDM9607_VDDMX		3
249#define MDM9607_VDDMX_AO	4
250#define MDM9607_VDDMX_VFL	5
251
252/* MSM8226 Power Domain Indexes */
253#define MSM8226_VDDCX		0
254#define MSM8226_VDDCX_AO	1
255#define MSM8226_VDDCX_VFC	2
256
257/* MSM8939 Power Domains */
258#define MSM8939_VDDMDCX		0
259#define MSM8939_VDDMDCX_AO	1
260#define MSM8939_VDDMDCX_VFC	2
261#define MSM8939_VDDCX		3
262#define MSM8939_VDDCX_AO	4
263#define MSM8939_VDDCX_VFC	5
264#define MSM8939_VDDMX		6
265#define MSM8939_VDDMX_AO	7
266
267/* MSM8916 Power Domain Indexes */
268#define MSM8916_VDDCX		0
269#define MSM8916_VDDCX_AO	1
270#define MSM8916_VDDCX_VFC	2
271#define MSM8916_VDDMX		3
272#define MSM8916_VDDMX_AO	4
273
274/* MSM8909 Power Domain Indexes */
275#define MSM8909_VDDCX		MSM8916_VDDCX
276#define MSM8909_VDDCX_AO	MSM8916_VDDCX_AO
277#define MSM8909_VDDCX_VFC	MSM8916_VDDCX_VFC
278#define MSM8909_VDDMX		MSM8916_VDDMX
279#define MSM8909_VDDMX_AO	MSM8916_VDDMX_AO
280
281/* MSM8917 Power Domain Indexes */
282#define MSM8917_VDDCX		0
283#define MSM8917_VDDCX_AO	1
284#define MSM8917_VDDCX_VFL	2
285#define MSM8917_VDDMX		3
286#define MSM8917_VDDMX_AO	4
287
288/* MSM8937 Power Domain Indexes */
289#define MSM8937_VDDCX		MSM8917_VDDCX
290#define MSM8937_VDDCX_AO	MSM8917_VDDCX_AO
291#define MSM8937_VDDCX_VFL	MSM8917_VDDCX_VFL
292#define MSM8937_VDDMX		MSM8917_VDDMX
293#define MSM8937_VDDMX_AO	MSM8917_VDDMX_AO
294
295/* QM215 Power Domain Indexes */
296#define QM215_VDDCX		MSM8917_VDDCX
297#define QM215_VDDCX_AO		MSM8917_VDDCX_AO
298#define QM215_VDDCX_VFL		MSM8917_VDDCX_VFL
299#define QM215_VDDMX		MSM8917_VDDMX
300#define QM215_VDDMX_AO		MSM8917_VDDMX_AO
301
302/* MSM8953 Power Domain Indexes */
303#define MSM8953_VDDMD		0
304#define MSM8953_VDDMD_AO	1
305#define MSM8953_VDDCX		2
306#define MSM8953_VDDCX_AO	3
307#define MSM8953_VDDCX_VFL	4
308#define MSM8953_VDDMX		5
309#define MSM8953_VDDMX_AO	6
310
311/* MSM8976 Power Domain Indexes */
312#define MSM8976_VDDCX		0
313#define MSM8976_VDDCX_AO	1
314#define MSM8976_VDDCX_VFL	2
315#define MSM8976_VDDMX		3
316#define MSM8976_VDDMX_AO	4
317#define MSM8976_VDDMX_VFL	5
318
319/* MSM8994 Power Domain Indexes */
320#define MSM8994_VDDCX		0
321#define MSM8994_VDDCX_AO	1
322#define MSM8994_VDDCX_VFC	2
323#define MSM8994_VDDMX		3
324#define MSM8994_VDDMX_AO	4
325#define MSM8994_VDDGFX		5
326#define MSM8994_VDDGFX_VFC	6
327
328/* MSM8996 Power Domain Indexes */
329#define MSM8996_VDDCX		0
330#define MSM8996_VDDCX_AO	1
331#define MSM8996_VDDCX_VFC	2
332#define MSM8996_VDDMX		3
333#define MSM8996_VDDMX_AO	4
334#define MSM8996_VDDSSCX		5
335#define MSM8996_VDDSSCX_VFC	6
336
337/* MSM8998 Power Domain Indexes */
338#define MSM8998_VDDCX		0
339#define MSM8998_VDDCX_AO	1
340#define MSM8998_VDDCX_VFL	2
341#define MSM8998_VDDMX		3
342#define MSM8998_VDDMX_AO	4
343#define MSM8998_VDDMX_VFL	5
344#define MSM8998_SSCCX		6
345#define MSM8998_SSCCX_VFL	7
346#define MSM8998_SSCMX		8
347#define MSM8998_SSCMX_VFL	9
348
349/* QCS404 Power Domains */
350#define QCS404_VDDMX		0
351#define QCS404_VDDMX_AO		1
352#define QCS404_VDDMX_VFL	2
353#define QCS404_LPICX		3
354#define QCS404_LPICX_VFL	4
355#define QCS404_LPIMX		5
356#define QCS404_LPIMX_VFL	6
357
358/* SDM660 Power Domains */
359#define SDM660_VDDCX		0
360#define SDM660_VDDCX_AO		1
361#define SDM660_VDDCX_VFL	2
362#define SDM660_VDDMX		3
363#define SDM660_VDDMX_AO		4
364#define SDM660_VDDMX_VFL	5
365#define SDM660_SSCCX		6
366#define SDM660_SSCCX_VFL	7
367#define SDM660_SSCMX		8
368#define SDM660_SSCMX_VFL	9
369
370/* SM6115 Power Domains */
371#define SM6115_VDDCX		0
372#define SM6115_VDDCX_AO		1
373#define SM6115_VDDCX_VFL	2
374#define SM6115_VDDMX		3
375#define SM6115_VDDMX_AO		4
376#define SM6115_VDDMX_VFL	5
377#define SM6115_VDD_LPI_CX	6
378#define SM6115_VDD_LPI_MX	7
379
380/* SM6125 Power Domains */
381#define SM6125_VDDCX		0
382#define SM6125_VDDCX_AO		1
383#define SM6125_VDDCX_VFL	2
384#define SM6125_VDDMX		3
385#define SM6125_VDDMX_AO		4
386#define SM6125_VDDMX_VFL	5
387
388/* QCM2290 Power Domains */
389#define QCM2290_VDDCX		0
390#define QCM2290_VDDCX_AO	1
391#define QCM2290_VDDCX_VFL	2
392#define QCM2290_VDDMX		3
393#define QCM2290_VDDMX_AO	4
394#define QCM2290_VDDMX_VFL	5
395#define QCM2290_VDD_LPI_CX	6
396#define QCM2290_VDD_LPI_MX	7
397
398/* RPM SMD Power Domain performance levels */
399#define RPM_SMD_LEVEL_RETENTION       16
400#define RPM_SMD_LEVEL_RETENTION_PLUS  32
401#define RPM_SMD_LEVEL_MIN_SVS         48
402#define RPM_SMD_LEVEL_LOW_SVS         64
403#define RPM_SMD_LEVEL_SVS             128
404#define RPM_SMD_LEVEL_SVS_PLUS        192
405#define RPM_SMD_LEVEL_NOM             256
406#define RPM_SMD_LEVEL_NOM_PLUS        320
407#define RPM_SMD_LEVEL_TURBO           384
408#define RPM_SMD_LEVEL_TURBO_NO_CPR    416
409#define RPM_SMD_LEVEL_TURBO_HIGH      448
410#define RPM_SMD_LEVEL_BINNING         512
411
412#endif