1c6e6eff4SRajendra Nayak /* SPDX-License-Identifier: GPL-2.0 */
2c6e6eff4SRajendra Nayak /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */
3c6e6eff4SRajendra Nayak 
4c6e6eff4SRajendra Nayak #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H
5c6e6eff4SRajendra Nayak #define _DT_BINDINGS_POWER_QCOM_RPMPD_H
6c6e6eff4SRajendra Nayak 
7c6e6eff4SRajendra Nayak /* SDM845 Power Domain Indexes */
8c6e6eff4SRajendra Nayak #define SDM845_EBI	0
9c6e6eff4SRajendra Nayak #define SDM845_MX	1
10c6e6eff4SRajendra Nayak #define SDM845_MX_AO	2
11c6e6eff4SRajendra Nayak #define SDM845_CX	3
12c6e6eff4SRajendra Nayak #define SDM845_CX_AO	4
13c6e6eff4SRajendra Nayak #define SDM845_LMX	5
14c6e6eff4SRajendra Nayak #define SDM845_LCX	6
15c6e6eff4SRajendra Nayak #define SDM845_GFX	7
16c6e6eff4SRajendra Nayak #define SDM845_MSS	8
17c6e6eff4SRajendra Nayak 
18f365bd33SVinod Koul /* SDX55 Power Domain Indexes */
19f365bd33SVinod Koul #define SDX55_MSS	0
20f365bd33SVinod Koul #define SDX55_MX	1
21f365bd33SVinod Koul #define SDX55_CX	2
22f365bd33SVinod Koul 
2392dde327SKonrad Dybcio /* SM6350 Power Domain Indexes */
2492dde327SKonrad Dybcio #define SM6350_CX	0
2592dde327SKonrad Dybcio #define SM6350_GFX	1
2692dde327SKonrad Dybcio #define SM6350_LCX	2
2792dde327SKonrad Dybcio #define SM6350_LMX	3
2892dde327SKonrad Dybcio #define SM6350_MSS	4
2992dde327SKonrad Dybcio #define SM6350_MX	5
3092dde327SKonrad Dybcio 
3118ec173dSSibi Sankar /* SM8150 Power Domain Indexes */
3218ec173dSSibi Sankar #define SM8150_MSS	0
3318ec173dSSibi Sankar #define SM8150_EBI	1
3418ec173dSSibi Sankar #define SM8150_LMX	2
3518ec173dSSibi Sankar #define SM8150_LCX	3
3618ec173dSSibi Sankar #define SM8150_GFX	4
3718ec173dSSibi Sankar #define SM8150_MX	5
3818ec173dSSibi Sankar #define SM8150_MX_AO	6
3918ec173dSSibi Sankar #define SM8150_CX	7
4018ec173dSSibi Sankar #define SM8150_CX_AO	8
4118ec173dSSibi Sankar #define SM8150_MMCX	9
4218ec173dSSibi Sankar #define SM8150_MMCX_AO	10
4318ec173dSSibi Sankar 
4464016bb8SBjorn Andersson /* SM8250 Power Domain Indexes */
4564016bb8SBjorn Andersson #define SM8250_CX	0
4664016bb8SBjorn Andersson #define SM8250_CX_AO	1
4764016bb8SBjorn Andersson #define SM8250_EBI	2
4864016bb8SBjorn Andersson #define SM8250_GFX	3
4964016bb8SBjorn Andersson #define SM8250_LCX	4
5064016bb8SBjorn Andersson #define SM8250_LMX	5
5164016bb8SBjorn Andersson #define SM8250_MMCX	6
5264016bb8SBjorn Andersson #define SM8250_MMCX_AO	7
5364016bb8SBjorn Andersson #define SM8250_MX	8
5464016bb8SBjorn Andersson #define SM8250_MX_AO	9
5564016bb8SBjorn Andersson 
56f20b61b8SVinod Koul /* SM8350 Power Domain Indexes */
57f20b61b8SVinod Koul #define SM8350_CX	0
58f20b61b8SVinod Koul #define SM8350_CX_AO	1
59f20b61b8SVinod Koul #define SM8350_EBI	2
60f20b61b8SVinod Koul #define SM8350_GFX	3
61f20b61b8SVinod Koul #define SM8350_LCX	4
62f20b61b8SVinod Koul #define SM8350_LMX	5
63f20b61b8SVinod Koul #define SM8350_MMCX	6
64f20b61b8SVinod Koul #define SM8350_MMCX_AO	7
65f20b61b8SVinod Koul #define SM8350_MX	8
66f20b61b8SVinod Koul #define SM8350_MX_AO	9
67f20b61b8SVinod Koul #define SM8350_MXC	10
68f20b61b8SVinod Koul #define SM8350_MXC_AO	11
69f20b61b8SVinod Koul #define SM8350_MSS	12
70f20b61b8SVinod Koul 
7152a4cb57SSibi Sankar /* SC7180 Power Domain Indexes */
7252a4cb57SSibi Sankar #define SC7180_CX	0
7352a4cb57SSibi Sankar #define SC7180_CX_AO	1
7452a4cb57SSibi Sankar #define SC7180_GFX	2
7552a4cb57SSibi Sankar #define SC7180_MX	3
7652a4cb57SSibi Sankar #define SC7180_MX_AO	4
7752a4cb57SSibi Sankar #define SC7180_LMX	5
7852a4cb57SSibi Sankar #define SC7180_LCX	6
7952a4cb57SSibi Sankar #define SC7180_MSS	7
8052a4cb57SSibi Sankar 
819a3e49d7SRajendra Nayak /* SC7280 Power Domain Indexes */
829a3e49d7SRajendra Nayak #define SC7280_CX	0
839a3e49d7SRajendra Nayak #define SC7280_CX_AO	1
849a3e49d7SRajendra Nayak #define SC7280_EBI	2
859a3e49d7SRajendra Nayak #define SC7280_GFX	3
869a3e49d7SRajendra Nayak #define SC7280_MX	4
879a3e49d7SRajendra Nayak #define SC7280_MX_AO	5
889a3e49d7SRajendra Nayak #define SC7280_LMX	6
899a3e49d7SRajendra Nayak #define SC7280_LCX	7
909a3e49d7SRajendra Nayak #define SC7280_MSS	8
919a3e49d7SRajendra Nayak 
92dfa3d406SBjorn Andersson /* SC8180X Power Domain Indexes */
93dfa3d406SBjorn Andersson #define SC8180X_CX	0
94dfa3d406SBjorn Andersson #define SC8180X_CX_AO	1
95dfa3d406SBjorn Andersson #define SC8180X_EBI	2
96dfa3d406SBjorn Andersson #define SC8180X_GFX	3
97dfa3d406SBjorn Andersson #define SC8180X_LCX	4
98dfa3d406SBjorn Andersson #define SC8180X_LMX	5
99dfa3d406SBjorn Andersson #define SC8180X_MMCX	6
100dfa3d406SBjorn Andersson #define SC8180X_MMCX_AO	7
101dfa3d406SBjorn Andersson #define SC8180X_MSS	8
102dfa3d406SBjorn Andersson #define SC8180X_MX	9
103dfa3d406SBjorn Andersson #define SC8180X_MX_AO	10
104dfa3d406SBjorn Andersson 
105c6e6eff4SRajendra Nayak /* SDM845 Power Domain performance levels */
106c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_RETENTION	16
107c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
108c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
109c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS	128
11087b517a8SJonathan Marek #define RPMH_REGULATOR_LEVEL_SVS_L0	144
111c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS_L1	192
11218ec173dSSibi Sankar #define RPMH_REGULATOR_LEVEL_SVS_L2	224
113c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM	256
114c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L1	320
115c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L2	336
116c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO	384
117c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO_L1	416
118c6e6eff4SRajendra Nayak 
119af32011fSKonrad Dybcio /* MDM9607 Power Domains */
120af32011fSKonrad Dybcio #define MDM9607_VDDCX		0
121af32011fSKonrad Dybcio #define MDM9607_VDDCX_AO	1
122af32011fSKonrad Dybcio #define MDM9607_VDDCX_VFL	2
123af32011fSKonrad Dybcio #define MDM9607_VDDMX		3
124af32011fSKonrad Dybcio #define MDM9607_VDDMX_AO	4
125af32011fSKonrad Dybcio #define MDM9607_VDDMX_VFL	5
126af32011fSKonrad Dybcio 
1271dd50f17SJun Nie /* MSM8939 Power Domains */
1281dd50f17SJun Nie #define MSM8939_VDDMDCX		0
1291dd50f17SJun Nie #define MSM8939_VDDMDCX_AO	1
1301dd50f17SJun Nie #define MSM8939_VDDMDCX_VFC	2
1311dd50f17SJun Nie #define MSM8939_VDDCX		3
1321dd50f17SJun Nie #define MSM8939_VDDCX_AO	4
1331dd50f17SJun Nie #define MSM8939_VDDCX_VFC	5
1341dd50f17SJun Nie #define MSM8939_VDDMX		6
1351dd50f17SJun Nie #define MSM8939_VDDMX_AO	7
1361dd50f17SJun Nie 
137819f7d91SStephan Gerhold /* MSM8916 Power Domain Indexes */
138819f7d91SStephan Gerhold #define MSM8916_VDDCX		0
139819f7d91SStephan Gerhold #define MSM8916_VDDCX_AO	1
140819f7d91SStephan Gerhold #define MSM8916_VDDCX_VFC	2
141819f7d91SStephan Gerhold #define MSM8916_VDDMX		3
142819f7d91SStephan Gerhold #define MSM8916_VDDMX_AO	4
143819f7d91SStephan Gerhold 
144cdb6f604SVladimir Lypak /* MSM8953 Power Domain Indexes */
145cdb6f604SVladimir Lypak #define MSM8953_VDDMD		0
146cdb6f604SVladimir Lypak #define MSM8953_VDDMD_AO	1
147cdb6f604SVladimir Lypak #define MSM8953_VDDCX		2
148cdb6f604SVladimir Lypak #define MSM8953_VDDCX_AO	3
149cdb6f604SVladimir Lypak #define MSM8953_VDDCX_VFL	4
150cdb6f604SVladimir Lypak #define MSM8953_VDDMX		5
151cdb6f604SVladimir Lypak #define MSM8953_VDDMX_AO	6
152cdb6f604SVladimir Lypak 
153b1d52244SAngeloGioacchino Del Regno /* MSM8976 Power Domain Indexes */
154b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX		0
155b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_AO	1
156b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_VFL	2
157b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX		3
158b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_AO	4
159b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_VFL	5
160b1d52244SAngeloGioacchino Del Regno 
16143eb76a2SKonrad Dybcio /* MSM8994 Power Domain Indexes */
16243eb76a2SKonrad Dybcio #define MSM8994_VDDCX		0
16343eb76a2SKonrad Dybcio #define MSM8994_VDDCX_AO	1
16443eb76a2SKonrad Dybcio #define MSM8994_VDDCX_VFC	2
16543eb76a2SKonrad Dybcio #define MSM8994_VDDMX		3
16643eb76a2SKonrad Dybcio #define MSM8994_VDDMX_AO	4
16743eb76a2SKonrad Dybcio #define MSM8994_VDDGFX		5
16843eb76a2SKonrad Dybcio #define MSM8994_VDDGFX_VFC	6
16943eb76a2SKonrad Dybcio 
170c6e6eff4SRajendra Nayak /* MSM8996 Power Domain Indexes */
171c6e6eff4SRajendra Nayak #define MSM8996_VDDCX		0
172c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_AO	1
173c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_VFC	2
174c6e6eff4SRajendra Nayak #define MSM8996_VDDMX		3
175c6e6eff4SRajendra Nayak #define MSM8996_VDDMX_AO	4
176c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX		5
177c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX_VFC	6
178c6e6eff4SRajendra Nayak 
179dec9a05aSSibi Sankar /* MSM8998 Power Domain Indexes */
180dec9a05aSSibi Sankar #define MSM8998_VDDCX		0
181dec9a05aSSibi Sankar #define MSM8998_VDDCX_AO	1
182dec9a05aSSibi Sankar #define MSM8998_VDDCX_VFL	2
183dec9a05aSSibi Sankar #define MSM8998_VDDMX		3
184dec9a05aSSibi Sankar #define MSM8998_VDDMX_AO	4
185dec9a05aSSibi Sankar #define MSM8998_VDDMX_VFL	5
186dec9a05aSSibi Sankar #define MSM8998_SSCCX		6
187dec9a05aSSibi Sankar #define MSM8998_SSCCX_VFL	7
188dec9a05aSSibi Sankar #define MSM8998_SSCMX		8
189dec9a05aSSibi Sankar #define MSM8998_SSCMX_VFL	9
190dec9a05aSSibi Sankar 
1910cb93b15SBjorn Andersson /* QCS404 Power Domains */
1920cb93b15SBjorn Andersson #define QCS404_VDDMX		0
1930cb93b15SBjorn Andersson #define QCS404_VDDMX_AO		1
1940cb93b15SBjorn Andersson #define QCS404_VDDMX_VFL	2
1950cb93b15SBjorn Andersson #define QCS404_LPICX		3
1960cb93b15SBjorn Andersson #define QCS404_LPICX_VFL	4
1970cb93b15SBjorn Andersson #define QCS404_LPIMX		5
1980cb93b15SBjorn Andersson #define QCS404_LPIMX_VFL	6
1990cb93b15SBjorn Andersson 
200ee84049cSKonrad Dybcio /* SDM660 Power Domains */
201ee84049cSKonrad Dybcio #define SDM660_VDDCX		0
202ee84049cSKonrad Dybcio #define SDM660_VDDCX_AO		1
203ee84049cSKonrad Dybcio #define SDM660_VDDCX_VFL	2
204ee84049cSKonrad Dybcio #define SDM660_VDDMX		3
205ee84049cSKonrad Dybcio #define SDM660_VDDMX_AO		4
206ee84049cSKonrad Dybcio #define SDM660_VDDMX_VFL	5
207ee84049cSKonrad Dybcio #define SDM660_SSCCX		6
208ee84049cSKonrad Dybcio #define SDM660_SSCCX_VFL	7
209ee84049cSKonrad Dybcio #define SDM660_SSCMX		8
210ee84049cSKonrad Dybcio #define SDM660_SSCMX_VFL	9
211ee84049cSKonrad Dybcio 
21249a22c4aSIskren Chernev /* SM6115 Power Domains */
21349a22c4aSIskren Chernev #define SM6115_VDDCX		0
21449a22c4aSIskren Chernev #define SM6115_VDDCX_AO		1
21549a22c4aSIskren Chernev #define SM6115_VDDCX_VFL	2
21649a22c4aSIskren Chernev #define SM6115_VDDMX		3
21749a22c4aSIskren Chernev #define SM6115_VDDMX_AO		4
21849a22c4aSIskren Chernev #define SM6115_VDDMX_VFL	5
21949a22c4aSIskren Chernev #define SM6115_VDD_LPI_CX	6
22049a22c4aSIskren Chernev #define SM6115_VDD_LPI_MX	7
22149a22c4aSIskren Chernev 
222*2475fcfbSShawn Guo /* QCM2290 Power Domains */
223*2475fcfbSShawn Guo #define QCM2290_VDDCX		0
224*2475fcfbSShawn Guo #define QCM2290_VDDCX_AO	1
225*2475fcfbSShawn Guo #define QCM2290_VDDCX_VFL	2
226*2475fcfbSShawn Guo #define QCM2290_VDDMX		3
227*2475fcfbSShawn Guo #define QCM2290_VDDMX_AO	4
228*2475fcfbSShawn Guo #define QCM2290_VDDMX_VFL	5
229*2475fcfbSShawn Guo #define QCM2290_VDD_LPI_CX	6
230*2475fcfbSShawn Guo #define QCM2290_VDD_LPI_MX	7
231*2475fcfbSShawn Guo 
2320cb93b15SBjorn Andersson /* RPM SMD Power Domain performance levels */
2330cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION       16
2340cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION_PLUS  32
2350cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_MIN_SVS         48
2360cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_LOW_SVS         64
2370cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS             128
2380cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS_PLUS        192
2390cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM             256
2400cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM_PLUS        320
2410cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO           384
2420cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO_NO_CPR    416
2434bc6aadbSAngelo G. Del Regno #define RPM_SMD_LEVEL_TURBO_HIGH      448
2440cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_BINNING         512
2450cb93b15SBjorn Andersson 
246c6e6eff4SRajendra Nayak #endif
247