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 /* SDX55 Power Domain Indexes */ 19 #define SDX55_MSS 0 20 #define SDX55_MX 1 21 #define SDX55_CX 2 22 23 /* SM8150 Power Domain Indexes */ 24 #define SM8150_MSS 0 25 #define SM8150_EBI 1 26 #define SM8150_LMX 2 27 #define SM8150_LCX 3 28 #define SM8150_GFX 4 29 #define SM8150_MX 5 30 #define SM8150_MX_AO 6 31 #define SM8150_CX 7 32 #define SM8150_CX_AO 8 33 #define SM8150_MMCX 9 34 #define SM8150_MMCX_AO 10 35 36 /* SM8250 Power Domain Indexes */ 37 #define SM8250_CX 0 38 #define SM8250_CX_AO 1 39 #define SM8250_EBI 2 40 #define SM8250_GFX 3 41 #define SM8250_LCX 4 42 #define SM8250_LMX 5 43 #define SM8250_MMCX 6 44 #define SM8250_MMCX_AO 7 45 #define SM8250_MX 8 46 #define SM8250_MX_AO 9 47 48 /* SM8350 Power Domain Indexes */ 49 #define SM8350_CX 0 50 #define SM8350_CX_AO 1 51 #define SM8350_EBI 2 52 #define SM8350_GFX 3 53 #define SM8350_LCX 4 54 #define SM8350_LMX 5 55 #define SM8350_MMCX 6 56 #define SM8350_MMCX_AO 7 57 #define SM8350_MX 8 58 #define SM8350_MX_AO 9 59 #define SM8350_MXC 10 60 #define SM8350_MXC_AO 11 61 #define SM8350_MSS 12 62 63 /* SC7180 Power Domain Indexes */ 64 #define SC7180_CX 0 65 #define SC7180_CX_AO 1 66 #define SC7180_GFX 2 67 #define SC7180_MX 3 68 #define SC7180_MX_AO 4 69 #define SC7180_LMX 5 70 #define SC7180_LCX 6 71 #define SC7180_MSS 7 72 73 /* SC7280 Power Domain Indexes */ 74 #define SC7280_CX 0 75 #define SC7280_CX_AO 1 76 #define SC7280_EBI 2 77 #define SC7280_GFX 3 78 #define SC7280_MX 4 79 #define SC7280_MX_AO 5 80 #define SC7280_LMX 6 81 #define SC7280_LCX 7 82 #define SC7280_MSS 8 83 84 /* SDM845 Power Domain performance levels */ 85 #define RPMH_REGULATOR_LEVEL_RETENTION 16 86 #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 87 #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 88 #define RPMH_REGULATOR_LEVEL_SVS 128 89 #define RPMH_REGULATOR_LEVEL_SVS_L0 144 90 #define RPMH_REGULATOR_LEVEL_SVS_L1 192 91 #define RPMH_REGULATOR_LEVEL_SVS_L2 224 92 #define RPMH_REGULATOR_LEVEL_NOM 256 93 #define RPMH_REGULATOR_LEVEL_NOM_L1 320 94 #define RPMH_REGULATOR_LEVEL_NOM_L2 336 95 #define RPMH_REGULATOR_LEVEL_TURBO 384 96 #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 97 98 /* MSM8939 Power Domains */ 99 #define MSM8939_VDDMDCX 0 100 #define MSM8939_VDDMDCX_AO 1 101 #define MSM8939_VDDMDCX_VFC 2 102 #define MSM8939_VDDCX 3 103 #define MSM8939_VDDCX_AO 4 104 #define MSM8939_VDDCX_VFC 5 105 #define MSM8939_VDDMX 6 106 #define MSM8939_VDDMX_AO 7 107 108 /* MSM8916 Power Domain Indexes */ 109 #define MSM8916_VDDCX 0 110 #define MSM8916_VDDCX_AO 1 111 #define MSM8916_VDDCX_VFC 2 112 #define MSM8916_VDDMX 3 113 #define MSM8916_VDDMX_AO 4 114 115 /* MSM8976 Power Domain Indexes */ 116 #define MSM8976_VDDCX 0 117 #define MSM8976_VDDCX_AO 1 118 #define MSM8976_VDDCX_VFL 2 119 #define MSM8976_VDDMX 3 120 #define MSM8976_VDDMX_AO 4 121 #define MSM8976_VDDMX_VFL 5 122 123 /* MSM8994 Power Domain Indexes */ 124 #define MSM8994_VDDCX 0 125 #define MSM8994_VDDCX_AO 1 126 #define MSM8994_VDDCX_VFC 2 127 #define MSM8994_VDDMX 3 128 #define MSM8994_VDDMX_AO 4 129 #define MSM8994_VDDGFX 5 130 #define MSM8994_VDDGFX_VFC 6 131 132 /* MSM8996 Power Domain Indexes */ 133 #define MSM8996_VDDCX 0 134 #define MSM8996_VDDCX_AO 1 135 #define MSM8996_VDDCX_VFC 2 136 #define MSM8996_VDDMX 3 137 #define MSM8996_VDDMX_AO 4 138 #define MSM8996_VDDSSCX 5 139 #define MSM8996_VDDSSCX_VFC 6 140 141 /* MSM8998 Power Domain Indexes */ 142 #define MSM8998_VDDCX 0 143 #define MSM8998_VDDCX_AO 1 144 #define MSM8998_VDDCX_VFL 2 145 #define MSM8998_VDDMX 3 146 #define MSM8998_VDDMX_AO 4 147 #define MSM8998_VDDMX_VFL 5 148 #define MSM8998_SSCCX 6 149 #define MSM8998_SSCCX_VFL 7 150 #define MSM8998_SSCMX 8 151 #define MSM8998_SSCMX_VFL 9 152 153 /* QCS404 Power Domains */ 154 #define QCS404_VDDMX 0 155 #define QCS404_VDDMX_AO 1 156 #define QCS404_VDDMX_VFL 2 157 #define QCS404_LPICX 3 158 #define QCS404_LPICX_VFL 4 159 #define QCS404_LPIMX 5 160 #define QCS404_LPIMX_VFL 6 161 162 /* SDM660 Power Domains */ 163 #define SDM660_VDDCX 0 164 #define SDM660_VDDCX_AO 1 165 #define SDM660_VDDCX_VFL 2 166 #define SDM660_VDDMX 3 167 #define SDM660_VDDMX_AO 4 168 #define SDM660_VDDMX_VFL 5 169 #define SDM660_SSCCX 6 170 #define SDM660_SSCCX_VFL 7 171 #define SDM660_SSCMX 8 172 #define SDM660_SSCMX_VFL 9 173 174 /* RPM SMD Power Domain performance levels */ 175 #define RPM_SMD_LEVEL_RETENTION 16 176 #define RPM_SMD_LEVEL_RETENTION_PLUS 32 177 #define RPM_SMD_LEVEL_MIN_SVS 48 178 #define RPM_SMD_LEVEL_LOW_SVS 64 179 #define RPM_SMD_LEVEL_SVS 128 180 #define RPM_SMD_LEVEL_SVS_PLUS 192 181 #define RPM_SMD_LEVEL_NOM 256 182 #define RPM_SMD_LEVEL_NOM_PLUS 320 183 #define RPM_SMD_LEVEL_TURBO 384 184 #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 185 #define RPM_SMD_LEVEL_TURBO_HIGH 448 186 #define RPM_SMD_LEVEL_BINNING 512 187 188 #endif 189