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 /* SDM845 Power Domain Indexes */
8 #define SDM845_EBI	0
9 #define SDM845_MX	1
10 #define SDM845_MX_AO	2
11 #define SDM845_CX	3
12 #define SDM845_CX_AO	4
13 #define SDM845_LMX	5
14 #define SDM845_LCX	6
15 #define SDM845_GFX	7
16 #define SDM845_MSS	8
17 
18 /* SDM845 Power Domain performance levels */
19 #define RPMH_REGULATOR_LEVEL_RETENTION	16
20 #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
21 #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
22 #define RPMH_REGULATOR_LEVEL_SVS	128
23 #define RPMH_REGULATOR_LEVEL_SVS_L1	192
24 #define RPMH_REGULATOR_LEVEL_NOM	256
25 #define RPMH_REGULATOR_LEVEL_NOM_L1	320
26 #define RPMH_REGULATOR_LEVEL_NOM_L2	336
27 #define RPMH_REGULATOR_LEVEL_TURBO	384
28 #define RPMH_REGULATOR_LEVEL_TURBO_L1	416
29 
30 /* MSM8976 Power Domain Indexes */
31 #define MSM8976_VDDCX		0
32 #define MSM8976_VDDCX_AO	1
33 #define MSM8976_VDDCX_VFL	2
34 #define MSM8976_VDDMX		3
35 #define MSM8976_VDDMX_AO	4
36 #define MSM8976_VDDMX_VFL	5
37 
38 /* MSM8996 Power Domain Indexes */
39 #define MSM8996_VDDCX		0
40 #define MSM8996_VDDCX_AO	1
41 #define MSM8996_VDDCX_VFC	2
42 #define MSM8996_VDDMX		3
43 #define MSM8996_VDDMX_AO	4
44 #define MSM8996_VDDSSCX		5
45 #define MSM8996_VDDSSCX_VFC	6
46 
47 /* MSM8998 Power Domain Indexes */
48 #define MSM8998_VDDCX		0
49 #define MSM8998_VDDCX_AO	1
50 #define MSM8998_VDDCX_VFL	2
51 #define MSM8998_VDDMX		3
52 #define MSM8998_VDDMX_AO	4
53 #define MSM8998_VDDMX_VFL	5
54 #define MSM8998_SSCCX		6
55 #define MSM8998_SSCCX_VFL	7
56 #define MSM8998_SSCMX		8
57 #define MSM8998_SSCMX_VFL	9
58 
59 /* QCS404 Power Domains */
60 #define QCS404_VDDMX		0
61 #define QCS404_VDDMX_AO		1
62 #define QCS404_VDDMX_VFL	2
63 #define QCS404_LPICX		3
64 #define QCS404_LPICX_VFL	4
65 #define QCS404_LPIMX		5
66 #define QCS404_LPIMX_VFL	6
67 
68 /* RPM SMD Power Domain performance levels */
69 #define RPM_SMD_LEVEL_RETENTION       16
70 #define RPM_SMD_LEVEL_RETENTION_PLUS  32
71 #define RPM_SMD_LEVEL_MIN_SVS         48
72 #define RPM_SMD_LEVEL_LOW_SVS         64
73 #define RPM_SMD_LEVEL_SVS             128
74 #define RPM_SMD_LEVEL_SVS_PLUS        192
75 #define RPM_SMD_LEVEL_NOM             256
76 #define RPM_SMD_LEVEL_NOM_PLUS        320
77 #define RPM_SMD_LEVEL_TURBO           384
78 #define RPM_SMD_LEVEL_TURBO_NO_CPR    416
79 #define RPM_SMD_LEVEL_TURBO_HIGH      448
80 #define RPM_SMD_LEVEL_BINNING         512
81 
82 #endif
83