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 /* QDU1000/QRU1000 Power Domain Indexes */ 117 #define QDU1000_EBI 0 118 #define QDU1000_MSS 1 119 #define QDU1000_CX 2 120 #define QDU1000_MX 3 121 122 /* SC7180 Power Domain Indexes */ 123 #define SC7180_CX 0 124 #define SC7180_CX_AO 1 125 #define SC7180_GFX 2 126 #define SC7180_MX 3 127 #define SC7180_MX_AO 4 128 #define SC7180_LMX 5 129 #define SC7180_LCX 6 130 #define SC7180_MSS 7 131 132 /* SC7280 Power Domain Indexes */ 133 #define SC7280_CX 0 134 #define SC7280_CX_AO 1 135 #define SC7280_EBI 2 136 #define SC7280_GFX 3 137 #define SC7280_MX 4 138 #define SC7280_MX_AO 5 139 #define SC7280_LMX 6 140 #define SC7280_LCX 7 141 #define SC7280_MSS 8 142 143 /* SC8180X Power Domain Indexes */ 144 #define SC8180X_CX 0 145 #define SC8180X_CX_AO 1 146 #define SC8180X_EBI 2 147 #define SC8180X_GFX 3 148 #define SC8180X_LCX 4 149 #define SC8180X_LMX 5 150 #define SC8180X_MMCX 6 151 #define SC8180X_MMCX_AO 7 152 #define SC8180X_MSS 8 153 #define SC8180X_MX 9 154 #define SC8180X_MX_AO 10 155 156 /* SC8280XP Power Domain Indexes */ 157 #define SC8280XP_CX 0 158 #define SC8280XP_CX_AO 1 159 #define SC8280XP_DDR 2 160 #define SC8280XP_EBI 3 161 #define SC8280XP_GFX 4 162 #define SC8280XP_LCX 5 163 #define SC8280XP_LMX 6 164 #define SC8280XP_MMCX 7 165 #define SC8280XP_MMCX_AO 8 166 #define SC8280XP_MSS 9 167 #define SC8280XP_MX 10 168 #define SC8280XP_MXC 12 169 #define SC8280XP_MX_AO 11 170 #define SC8280XP_NSP 13 171 #define SC8280XP_QPHY 14 172 #define SC8280XP_XO 15 173 174 /* SDM845 Power Domain performance levels */ 175 #define RPMH_REGULATOR_LEVEL_RETENTION 16 176 #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 177 #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 178 #define RPMH_REGULATOR_LEVEL_SVS 128 179 #define RPMH_REGULATOR_LEVEL_SVS_L0 144 180 #define RPMH_REGULATOR_LEVEL_SVS_L1 192 181 #define RPMH_REGULATOR_LEVEL_SVS_L2 224 182 #define RPMH_REGULATOR_LEVEL_NOM 256 183 #define RPMH_REGULATOR_LEVEL_NOM_L1 320 184 #define RPMH_REGULATOR_LEVEL_NOM_L2 336 185 #define RPMH_REGULATOR_LEVEL_TURBO 384 186 #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 187 188 /* MDM9607 Power Domains */ 189 #define MDM9607_VDDCX 0 190 #define MDM9607_VDDCX_AO 1 191 #define MDM9607_VDDCX_VFL 2 192 #define MDM9607_VDDMX 3 193 #define MDM9607_VDDMX_AO 4 194 #define MDM9607_VDDMX_VFL 5 195 196 /* MSM8226 Power Domain Indexes */ 197 #define MSM8226_VDDCX 0 198 #define MSM8226_VDDCX_AO 1 199 #define MSM8226_VDDCX_VFC 2 200 201 /* MSM8939 Power Domains */ 202 #define MSM8939_VDDMDCX 0 203 #define MSM8939_VDDMDCX_AO 1 204 #define MSM8939_VDDMDCX_VFC 2 205 #define MSM8939_VDDCX 3 206 #define MSM8939_VDDCX_AO 4 207 #define MSM8939_VDDCX_VFC 5 208 #define MSM8939_VDDMX 6 209 #define MSM8939_VDDMX_AO 7 210 211 /* MSM8916 Power Domain Indexes */ 212 #define MSM8916_VDDCX 0 213 #define MSM8916_VDDCX_AO 1 214 #define MSM8916_VDDCX_VFC 2 215 #define MSM8916_VDDMX 3 216 #define MSM8916_VDDMX_AO 4 217 218 /* MSM8909 Power Domain Indexes */ 219 #define MSM8909_VDDCX MSM8916_VDDCX 220 #define MSM8909_VDDCX_AO MSM8916_VDDCX_AO 221 #define MSM8909_VDDCX_VFC MSM8916_VDDCX_VFC 222 #define MSM8909_VDDMX MSM8916_VDDMX 223 #define MSM8909_VDDMX_AO MSM8916_VDDMX_AO 224 225 /* MSM8953 Power Domain Indexes */ 226 #define MSM8953_VDDMD 0 227 #define MSM8953_VDDMD_AO 1 228 #define MSM8953_VDDCX 2 229 #define MSM8953_VDDCX_AO 3 230 #define MSM8953_VDDCX_VFL 4 231 #define MSM8953_VDDMX 5 232 #define MSM8953_VDDMX_AO 6 233 234 /* MSM8976 Power Domain Indexes */ 235 #define MSM8976_VDDCX 0 236 #define MSM8976_VDDCX_AO 1 237 #define MSM8976_VDDCX_VFL 2 238 #define MSM8976_VDDMX 3 239 #define MSM8976_VDDMX_AO 4 240 #define MSM8976_VDDMX_VFL 5 241 242 /* MSM8994 Power Domain Indexes */ 243 #define MSM8994_VDDCX 0 244 #define MSM8994_VDDCX_AO 1 245 #define MSM8994_VDDCX_VFC 2 246 #define MSM8994_VDDMX 3 247 #define MSM8994_VDDMX_AO 4 248 #define MSM8994_VDDGFX 5 249 #define MSM8994_VDDGFX_VFC 6 250 251 /* MSM8996 Power Domain Indexes */ 252 #define MSM8996_VDDCX 0 253 #define MSM8996_VDDCX_AO 1 254 #define MSM8996_VDDCX_VFC 2 255 #define MSM8996_VDDMX 3 256 #define MSM8996_VDDMX_AO 4 257 #define MSM8996_VDDSSCX 5 258 #define MSM8996_VDDSSCX_VFC 6 259 260 /* MSM8998 Power Domain Indexes */ 261 #define MSM8998_VDDCX 0 262 #define MSM8998_VDDCX_AO 1 263 #define MSM8998_VDDCX_VFL 2 264 #define MSM8998_VDDMX 3 265 #define MSM8998_VDDMX_AO 4 266 #define MSM8998_VDDMX_VFL 5 267 #define MSM8998_SSCCX 6 268 #define MSM8998_SSCCX_VFL 7 269 #define MSM8998_SSCMX 8 270 #define MSM8998_SSCMX_VFL 9 271 272 /* QCS404 Power Domains */ 273 #define QCS404_VDDMX 0 274 #define QCS404_VDDMX_AO 1 275 #define QCS404_VDDMX_VFL 2 276 #define QCS404_LPICX 3 277 #define QCS404_LPICX_VFL 4 278 #define QCS404_LPIMX 5 279 #define QCS404_LPIMX_VFL 6 280 281 /* SDM660 Power Domains */ 282 #define SDM660_VDDCX 0 283 #define SDM660_VDDCX_AO 1 284 #define SDM660_VDDCX_VFL 2 285 #define SDM660_VDDMX 3 286 #define SDM660_VDDMX_AO 4 287 #define SDM660_VDDMX_VFL 5 288 #define SDM660_SSCCX 6 289 #define SDM660_SSCCX_VFL 7 290 #define SDM660_SSCMX 8 291 #define SDM660_SSCMX_VFL 9 292 293 /* SM6115 Power Domains */ 294 #define SM6115_VDDCX 0 295 #define SM6115_VDDCX_AO 1 296 #define SM6115_VDDCX_VFL 2 297 #define SM6115_VDDMX 3 298 #define SM6115_VDDMX_AO 4 299 #define SM6115_VDDMX_VFL 5 300 #define SM6115_VDD_LPI_CX 6 301 #define SM6115_VDD_LPI_MX 7 302 303 /* SM6125 Power Domains */ 304 #define SM6125_VDDCX 0 305 #define SM6125_VDDCX_AO 1 306 #define SM6125_VDDCX_VFL 2 307 #define SM6125_VDDMX 3 308 #define SM6125_VDDMX_AO 4 309 #define SM6125_VDDMX_VFL 5 310 311 /* QCM2290 Power Domains */ 312 #define QCM2290_VDDCX 0 313 #define QCM2290_VDDCX_AO 1 314 #define QCM2290_VDDCX_VFL 2 315 #define QCM2290_VDDMX 3 316 #define QCM2290_VDDMX_AO 4 317 #define QCM2290_VDDMX_VFL 5 318 #define QCM2290_VDD_LPI_CX 6 319 #define QCM2290_VDD_LPI_MX 7 320 321 /* RPM SMD Power Domain performance levels */ 322 #define RPM_SMD_LEVEL_RETENTION 16 323 #define RPM_SMD_LEVEL_RETENTION_PLUS 32 324 #define RPM_SMD_LEVEL_MIN_SVS 48 325 #define RPM_SMD_LEVEL_LOW_SVS 64 326 #define RPM_SMD_LEVEL_SVS 128 327 #define RPM_SMD_LEVEL_SVS_PLUS 192 328 #define RPM_SMD_LEVEL_NOM 256 329 #define RPM_SMD_LEVEL_NOM_PLUS 320 330 #define RPM_SMD_LEVEL_TURBO 384 331 #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 332 #define RPM_SMD_LEVEL_TURBO_HIGH 448 333 #define RPM_SMD_LEVEL_BINNING 512 334 335 #endif 336