1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */
4 #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H
5 #define _DT_BINDINGS_POWER_QCOM_RPMPD_H
7 /* SDM845 Power Domain Indexes */
10 #define SDM845_MX_AO 2
12 #define SDM845_CX_AO 4
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
30 /* MSM8996 Power Domain Indexes */
31 #define MSM8996_VDDCX 0
32 #define MSM8996_VDDCX_AO 1
33 #define MSM8996_VDDCX_VFC 2
34 #define MSM8996_VDDMX 3
35 #define MSM8996_VDDMX_AO 4
36 #define MSM8996_VDDSSCX 5
37 #define MSM8996_VDDSSCX_VFC 6
39 /* MSM8998 Power Domain Indexes */
40 #define MSM8998_VDDCX 0
41 #define MSM8998_VDDCX_AO 1
42 #define MSM8998_VDDCX_VFL 2
43 #define MSM8998_VDDMX 3
44 #define MSM8998_VDDMX_AO 4
45 #define MSM8998_VDDMX_VFL 5
46 #define MSM8998_SSCCX 6
47 #define MSM8998_SSCCX_VFL 7
48 #define MSM8998_SSCMX 8
49 #define MSM8998_SSCMX_VFL 9
51 /* QCS404 Power Domains */
52 #define QCS404_VDDMX 0
53 #define QCS404_VDDMX_AO 1
54 #define QCS404_VDDMX_VFL 2
55 #define QCS404_LPICX 3
56 #define QCS404_LPICX_VFL 4
57 #define QCS404_LPIMX 5
58 #define QCS404_LPIMX_VFL 6
60 /* RPM SMD Power Domain performance levels */
61 #define RPM_SMD_LEVEL_RETENTION 16
62 #define RPM_SMD_LEVEL_RETENTION_PLUS 32
63 #define RPM_SMD_LEVEL_MIN_SVS 48
64 #define RPM_SMD_LEVEL_LOW_SVS 64
65 #define RPM_SMD_LEVEL_SVS 128
66 #define RPM_SMD_LEVEL_SVS_PLUS 192
67 #define RPM_SMD_LEVEL_NOM 256
68 #define RPM_SMD_LEVEL_NOM_PLUS 320
69 #define RPM_SMD_LEVEL_TURBO 384
70 #define RPM_SMD_LEVEL_TURBO_NO_CPR 416
71 #define RPM_SMD_LEVEL_BINNING 512