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 /* SDM670 Power Domain Indexes */ 8 #define SDM670_MX 0 9 #define SDM670_MX_AO 1 10 #define SDM670_CX 2 11 #define SDM670_CX_AO 3 12 #define SDM670_LMX 4 13 #define SDM670_LCX 5 14 #define SDM670_GFX 6 15 #define SDM670_MSS 7 16 17 /* SDM845 Power Domain Indexes */ 18 #define SDM845_EBI 0 19 #define SDM845_MX 1 20 #define SDM845_MX_AO 2 21 #define SDM845_CX 3 22 #define SDM845_CX_AO 4 23 #define SDM845_LMX 5 24 #define SDM845_LCX 6 25 #define SDM845_GFX 7 26 #define SDM845_MSS 8 27 28 /* SDX55 Power Domain Indexes */ 29 #define SDX55_MSS 0 30 #define SDX55_MX 1 31 #define SDX55_CX 2 32 33 /* SDX65 Power Domain Indexes */ 34 #define SDX65_MSS 0 35 #define SDX65_MX 1 36 #define SDX65_MX_AO 2 37 #define SDX65_CX 3 38 #define SDX65_CX_AO 4 39 #define SDX65_MXC 5 40 41 /* SM6350 Power Domain Indexes */ 42 #define SM6350_CX 0 43 #define SM6350_GFX 1 44 #define SM6350_LCX 2 45 #define SM6350_LMX 3 46 #define SM6350_MSS 4 47 #define SM6350_MX 5 48 49 /* SM6350 Power Domain Indexes */ 50 #define SM6375_VDDCX 0 51 #define SM6375_VDDCX_AO 1 52 #define SM6375_VDDCX_VFL 2 53 #define SM6375_VDDMX 3 54 #define SM6375_VDDMX_AO 4 55 #define SM6375_VDDMX_VFL 5 56 #define SM6375_VDDGX 6 57 #define SM6375_VDDGX_AO 7 58 #define SM6375_VDD_LPI_CX 8 59 #define SM6375_VDD_LPI_MX 9 60 61 /* SM8150 Power Domain Indexes */ 62 #define SM8150_MSS 0 63 #define SM8150_EBI 1 64 #define SM8150_LMX 2 65 #define SM8150_LCX 3 66 #define SM8150_GFX 4 67 #define SM8150_MX 5 68 #define SM8150_MX_AO 6 69 #define SM8150_CX 7 70 #define SM8150_CX_AO 8 71 #define SM8150_MMCX 9 72 #define SM8150_MMCX_AO 10 73 74 /* SM8250 Power Domain Indexes */ 75 #define SM8250_CX 0 76 #define SM8250_CX_AO 1 77 #define SM8250_EBI 2 78 #define SM8250_GFX 3 79 #define SM8250_LCX 4 80 #define SM8250_LMX 5 81 #define SM8250_MMCX 6 82 #define SM8250_MMCX_AO 7 83 #define SM8250_MX 8 84 #define SM8250_MX_AO 9 85 86 /* SM8350 Power Domain Indexes */ 87 #define SM8350_CX 0 88 #define SM8350_CX_AO 1 89 #define SM8350_EBI 2 90 #define SM8350_GFX 3 91 #define SM8350_LCX 4 92 #define SM8350_LMX 5 93 #define SM8350_MMCX 6 94 #define SM8350_MMCX_AO 7 95 #define SM8350_MX 8 96 #define SM8350_MX_AO 9 97 #define SM8350_MXC 10 98 #define SM8350_MXC_AO 11 99 #define SM8350_MSS 12 100 101 /* SM8450 Power Domain Indexes */ 102 #define SM8450_CX 0 103 #define SM8450_CX_AO 1 104 #define SM8450_EBI 2 105 #define SM8450_GFX 3 106 #define SM8450_LCX 4 107 #define SM8450_LMX 5 108 #define SM8450_MMCX 6 109 #define SM8450_MMCX_AO 7 110 #define SM8450_MX 8 111 #define SM8450_MX_AO 9 112 #define SM8450_MXC 10 113 #define SM8450_MXC_AO 11 114 #define SM8450_MSS 12 115 116 /* SC7180 Power Domain Indexes */ 117 #define SC7180_CX 0 118 #define SC7180_CX_AO 1 119 #define SC7180_GFX 2 120 #define SC7180_MX 3 121 #define SC7180_MX_AO 4 122 #define SC7180_LMX 5 123 #define SC7180_LCX 6 124 #define SC7180_MSS 7 125 126 /* SC7280 Power Domain Indexes */ 127 #define SC7280_CX 0 128 #define SC7280_CX_AO 1 129 #define SC7280_EBI 2 130 #define SC7280_GFX 3 131 #define SC7280_MX 4 132 #define SC7280_MX_AO 5 133 #define SC7280_LMX 6 134 #define SC7280_LCX 7 135 #define SC7280_MSS 8 136 137 /* SC8180X Power Domain Indexes */ 138 #define SC8180X_CX 0 139 #define SC8180X_CX_AO 1 140 #define SC8180X_EBI 2 141 #define SC8180X_GFX 3 142 #define SC8180X_LCX 4 143 #define SC8180X_LMX 5 144 #define SC8180X_MMCX 6 145 #define SC8180X_MMCX_AO 7 146 #define SC8180X_MSS 8 147 #define SC8180X_MX 9 148 #define SC8180X_MX_AO 10 149 150 /* SC8280XP Power Domain Indexes */ 151 #define SC8280XP_CX 0 152 #define SC8280XP_CX_AO 1 153 #define SC8280XP_DDR 2 154 #define SC8280XP_EBI 3 155 #define SC8280XP_GFX 4 156 #define SC8280XP_LCX 5 157 #define SC8280XP_LMX 6 158 #define SC8280XP_MMCX 7 159 #define SC8280XP_MMCX_AO 8 160 #define SC8280XP_MSS 9 161 #define SC8280XP_MX 10 162 #define SC8280XP_MXC 12 163 #define SC8280XP_MX_AO 11 164 #define SC8280XP_NSP 13 165 #define SC8280XP_QPHY 14 166 #define SC8280XP_XO 15 167 168 /* SDM845 Power Domain performance levels */ 169 #define RPMH_REGULATOR_LEVEL_RETENTION 16 170 #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 171 #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 172 #define RPMH_REGULATOR_LEVEL_SVS 128 173 #define RPMH_REGULATOR_LEVEL_SVS_L0 144 174 #define RPMH_REGULATOR_LEVEL_SVS_L1 192 175 #define RPMH_REGULATOR_LEVEL_SVS_L2 224 176 #define RPMH_REGULATOR_LEVEL_NOM 256 177 #define RPMH_REGULATOR_LEVEL_NOM_L1 320 178 #define RPMH_REGULATOR_LEVEL_NOM_L2 336 179 #define RPMH_REGULATOR_LEVEL_TURBO 384 180 #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 181 182 /* MDM9607 Power Domains */ 183 #define MDM9607_VDDCX 0 184 #define MDM9607_VDDCX_AO 1 185 #define MDM9607_VDDCX_VFL 2 186 #define MDM9607_VDDMX 3 187 #define MDM9607_VDDMX_AO 4 188 #define MDM9607_VDDMX_VFL 5 189 190 /* MSM8226 Power Domain Indexes */ 191 #define MSM8226_VDDCX 0 192 #define MSM8226_VDDCX_AO 1 193 #define MSM8226_VDDCX_VFC 2 194 195 /* MSM8939 Power Domains */ 196 #define MSM8939_VDDMDCX 0 197 #define MSM8939_VDDMDCX_AO 1 198 #define MSM8939_VDDMDCX_VFC 2 199 #define MSM8939_VDDCX 3 200 #define MSM8939_VDDCX_AO 4 201 #define MSM8939_VDDCX_VFC 5 202 #define MSM8939_VDDMX 6 203 #define MSM8939_VDDMX_AO 7 204 205 /* MSM8916 Power Domain Indexes */ 206 #define MSM8916_VDDCX 0 207 #define MSM8916_VDDCX_AO 1 208 #define MSM8916_VDDCX_VFC 2 209 #define MSM8916_VDDMX 3 210 #define MSM8916_VDDMX_AO 4 211 212 /* MSM8909 Power Domain Indexes */ 213 #define MSM8909_VDDCX MSM8916_VDDCX 214 #define MSM8909_VDDCX_AO MSM8916_VDDCX_AO 215 #define MSM8909_VDDCX_VFC MSM8916_VDDCX_VFC 216 #define MSM8909_VDDMX MSM8916_VDDMX 217 #define MSM8909_VDDMX_AO MSM8916_VDDMX_AO 218 219 /* MSM8953 Power Domain Indexes */ 220 #define MSM8953_VDDMD 0 221 #define MSM8953_VDDMD_AO 1 222 #define MSM8953_VDDCX 2 223 #define MSM8953_VDDCX_AO 3 224 #define MSM8953_VDDCX_VFL 4 225 #define MSM8953_VDDMX 5 226 #define MSM8953_VDDMX_AO 6 227 228 /* MSM8976 Power Domain Indexes */ 229 #define MSM8976_VDDCX 0 230 #define MSM8976_VDDCX_AO 1 231 #define MSM8976_VDDCX_VFL 2 232 #define MSM8976_VDDMX 3 233 #define MSM8976_VDDMX_AO 4 234 #define MSM8976_VDDMX_VFL 5 235 236 /* MSM8994 Power Domain Indexes */ 237 #define MSM8994_VDDCX 0 238 #define MSM8994_VDDCX_AO 1 239 #define MSM8994_VDDCX_VFC 2 240 #define MSM8994_VDDMX 3 241 #define MSM8994_VDDMX_AO 4 242 #define MSM8994_VDDGFX 5 243 #define MSM8994_VDDGFX_VFC 6 244 245 /* MSM8996 Power Domain Indexes */ 246 #define MSM8996_VDDCX 0 247 #define MSM8996_VDDCX_AO 1 248 #define MSM8996_VDDCX_VFC 2 249 #define MSM8996_VDDMX 3 250 #define MSM8996_VDDMX_AO 4 251 #define MSM8996_VDDSSCX 5 252 #define MSM8996_VDDSSCX_VFC 6 253 254 /* MSM8998 Power Domain Indexes */ 255 #define MSM8998_VDDCX 0 256 #define MSM8998_VDDCX_AO 1 257 #define MSM8998_VDDCX_VFL 2 258 #define MSM8998_VDDMX 3 259 #define MSM8998_VDDMX_AO 4 260 #define MSM8998_VDDMX_VFL 5 261 #define MSM8998_SSCCX 6 262 #define MSM8998_SSCCX_VFL 7 263 #define MSM8998_SSCMX 8 264 #define MSM8998_SSCMX_VFL 9 265 266 /* QCS404 Power Domains */ 267 #define QCS404_VDDMX 0 268 #define QCS404_VDDMX_AO 1 269 #define QCS404_VDDMX_VFL 2 270 #define QCS404_LPICX 3 271 #define QCS404_LPICX_VFL 4 272 #define QCS404_LPIMX 5 273 #define QCS404_LPIMX_VFL 6 274 275 /* SDM660 Power Domains */ 276 #define SDM660_VDDCX 0 277 #define SDM660_VDDCX_AO 1 278 #define SDM660_VDDCX_VFL 2 279 #define SDM660_VDDMX 3 280 #define SDM660_VDDMX_AO 4 281 #define SDM660_VDDMX_VFL 5 282 #define SDM660_SSCCX 6 283 #define SDM660_SSCCX_VFL 7 284 #define SDM660_SSCMX 8 285 #define SDM660_SSCMX_VFL 9 286 287 /* SM6115 Power Domains */ 288 #define SM6115_VDDCX 0 289 #define SM6115_VDDCX_AO 1 290 #define SM6115_VDDCX_VFL 2 291 #define SM6115_VDDMX 3 292 #define SM6115_VDDMX_AO 4 293 #define SM6115_VDDMX_VFL 5 294 #define SM6115_VDD_LPI_CX 6 295 #define SM6115_VDD_LPI_MX 7 296 297 /* SM6125 Power Domains */ 298 #define SM6125_VDDCX 0 299 #define SM6125_VDDCX_AO 1 300 #define SM6125_VDDCX_VFL 2 301 #define SM6125_VDDMX 3 302 #define SM6125_VDDMX_AO 4 303 #define SM6125_VDDMX_VFL 5 304 305 /* QCM2290 Power Domains */ 306 #define QCM2290_VDDCX 0 307 #define QCM2290_VDDCX_AO 1 308 #define QCM2290_VDDCX_VFL 2 309 #define QCM2290_VDDMX 3 310 #define QCM2290_VDDMX_AO 4 311 #define QCM2290_VDDMX_VFL 5 312 #define QCM2290_VDD_LPI_CX 6 313 #define QCM2290_VDD_LPI_MX 7 314 315 /* RPM SMD Power Domain performance levels */ 316 #define RPM_SMD_LEVEL_RETENTION 16 317 #define RPM_SMD_LEVEL_RETENTION_PLUS 32 318 #define RPM_SMD_LEVEL_MIN_SVS 48 319 #define RPM_SMD_LEVEL_LOW_SVS 64 320 #define RPM_SMD_LEVEL_SVS 128 321 #define RPM_SMD_LEVEL_SVS_PLUS 192 322 #define RPM_SMD_LEVEL_NOM 256 323 #define RPM_SMD_LEVEL_NOM_PLUS 320 324 #define RPM_SMD_LEVEL_TURBO 384 325 #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 326 #define RPM_SMD_LEVEL_TURBO_HIGH 448 327 #define RPM_SMD_LEVEL_BINNING 512 328 329 #endif 330