1 1.1 jmcneill /* $NetBSD: qcom-rpmpd.h,v 1.1.1.3 2021/11/07 16:49:56 jmcneill Exp $ */ 2 1.1 jmcneill 3 1.1 jmcneill /* SPDX-License-Identifier: GPL-2.0 */ 4 1.1 jmcneill /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */ 5 1.1 jmcneill 6 1.1 jmcneill #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H 7 1.1 jmcneill #define _DT_BINDINGS_POWER_QCOM_RPMPD_H 8 1.1 jmcneill 9 1.1 jmcneill /* SDM845 Power Domain Indexes */ 10 1.1 jmcneill #define SDM845_EBI 0 11 1.1 jmcneill #define SDM845_MX 1 12 1.1 jmcneill #define SDM845_MX_AO 2 13 1.1 jmcneill #define SDM845_CX 3 14 1.1 jmcneill #define SDM845_CX_AO 4 15 1.1 jmcneill #define SDM845_LMX 5 16 1.1 jmcneill #define SDM845_LCX 6 17 1.1 jmcneill #define SDM845_GFX 7 18 1.1 jmcneill #define SDM845_MSS 8 19 1.1 jmcneill 20 1.1.1.3 jmcneill /* SDX55 Power Domain Indexes */ 21 1.1.1.3 jmcneill #define SDX55_MSS 0 22 1.1.1.3 jmcneill #define SDX55_MX 1 23 1.1.1.3 jmcneill #define SDX55_CX 2 24 1.1.1.3 jmcneill 25 1.1.1.3 jmcneill /* SM8150 Power Domain Indexes */ 26 1.1.1.3 jmcneill #define SM8150_MSS 0 27 1.1.1.3 jmcneill #define SM8150_EBI 1 28 1.1.1.3 jmcneill #define SM8150_LMX 2 29 1.1.1.3 jmcneill #define SM8150_LCX 3 30 1.1.1.3 jmcneill #define SM8150_GFX 4 31 1.1.1.3 jmcneill #define SM8150_MX 5 32 1.1.1.3 jmcneill #define SM8150_MX_AO 6 33 1.1.1.3 jmcneill #define SM8150_CX 7 34 1.1.1.3 jmcneill #define SM8150_CX_AO 8 35 1.1.1.3 jmcneill #define SM8150_MMCX 9 36 1.1.1.3 jmcneill #define SM8150_MMCX_AO 10 37 1.1.1.3 jmcneill 38 1.1.1.3 jmcneill /* SM8250 Power Domain Indexes */ 39 1.1.1.3 jmcneill #define SM8250_CX 0 40 1.1.1.3 jmcneill #define SM8250_CX_AO 1 41 1.1.1.3 jmcneill #define SM8250_EBI 2 42 1.1.1.3 jmcneill #define SM8250_GFX 3 43 1.1.1.3 jmcneill #define SM8250_LCX 4 44 1.1.1.3 jmcneill #define SM8250_LMX 5 45 1.1.1.3 jmcneill #define SM8250_MMCX 6 46 1.1.1.3 jmcneill #define SM8250_MMCX_AO 7 47 1.1.1.3 jmcneill #define SM8250_MX 8 48 1.1.1.3 jmcneill #define SM8250_MX_AO 9 49 1.1.1.3 jmcneill 50 1.1.1.3 jmcneill /* SM8350 Power Domain Indexes */ 51 1.1.1.3 jmcneill #define SM8350_CX 0 52 1.1.1.3 jmcneill #define SM8350_CX_AO 1 53 1.1.1.3 jmcneill #define SM8350_EBI 2 54 1.1.1.3 jmcneill #define SM8350_GFX 3 55 1.1.1.3 jmcneill #define SM8350_LCX 4 56 1.1.1.3 jmcneill #define SM8350_LMX 5 57 1.1.1.3 jmcneill #define SM8350_MMCX 6 58 1.1.1.3 jmcneill #define SM8350_MMCX_AO 7 59 1.1.1.3 jmcneill #define SM8350_MX 8 60 1.1.1.3 jmcneill #define SM8350_MX_AO 9 61 1.1.1.3 jmcneill #define SM8350_MXC 10 62 1.1.1.3 jmcneill #define SM8350_MXC_AO 11 63 1.1.1.3 jmcneill #define SM8350_MSS 12 64 1.1.1.3 jmcneill 65 1.1.1.3 jmcneill /* SC7180 Power Domain Indexes */ 66 1.1.1.3 jmcneill #define SC7180_CX 0 67 1.1.1.3 jmcneill #define SC7180_CX_AO 1 68 1.1.1.3 jmcneill #define SC7180_GFX 2 69 1.1.1.3 jmcneill #define SC7180_MX 3 70 1.1.1.3 jmcneill #define SC7180_MX_AO 4 71 1.1.1.3 jmcneill #define SC7180_LMX 5 72 1.1.1.3 jmcneill #define SC7180_LCX 6 73 1.1.1.3 jmcneill #define SC7180_MSS 7 74 1.1.1.3 jmcneill 75 1.1.1.3 jmcneill /* SC7280 Power Domain Indexes */ 76 1.1.1.3 jmcneill #define SC7280_CX 0 77 1.1.1.3 jmcneill #define SC7280_CX_AO 1 78 1.1.1.3 jmcneill #define SC7280_EBI 2 79 1.1.1.3 jmcneill #define SC7280_GFX 3 80 1.1.1.3 jmcneill #define SC7280_MX 4 81 1.1.1.3 jmcneill #define SC7280_MX_AO 5 82 1.1.1.3 jmcneill #define SC7280_LMX 6 83 1.1.1.3 jmcneill #define SC7280_LCX 7 84 1.1.1.3 jmcneill #define SC7280_MSS 8 85 1.1.1.3 jmcneill 86 1.1.1.3 jmcneill /* SC8180X Power Domain Indexes */ 87 1.1.1.3 jmcneill #define SC8180X_CX 0 88 1.1.1.3 jmcneill #define SC8180X_CX_AO 1 89 1.1.1.3 jmcneill #define SC8180X_EBI 2 90 1.1.1.3 jmcneill #define SC8180X_GFX 3 91 1.1.1.3 jmcneill #define SC8180X_LCX 4 92 1.1.1.3 jmcneill #define SC8180X_LMX 5 93 1.1.1.3 jmcneill #define SC8180X_MMCX 6 94 1.1.1.3 jmcneill #define SC8180X_MMCX_AO 7 95 1.1.1.3 jmcneill #define SC8180X_MSS 8 96 1.1.1.3 jmcneill #define SC8180X_MX 9 97 1.1.1.3 jmcneill #define SC8180X_MX_AO 10 98 1.1.1.3 jmcneill 99 1.1 jmcneill /* SDM845 Power Domain performance levels */ 100 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_RETENTION 16 101 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 102 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 103 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_SVS 128 104 1.1.1.3 jmcneill #define RPMH_REGULATOR_LEVEL_SVS_L0 144 105 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_SVS_L1 192 106 1.1.1.3 jmcneill #define RPMH_REGULATOR_LEVEL_SVS_L2 224 107 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_NOM 256 108 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_NOM_L1 320 109 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_NOM_L2 336 110 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_TURBO 384 111 1.1 jmcneill #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 112 1.1 jmcneill 113 1.1.1.3 jmcneill /* MDM9607 Power Domains */ 114 1.1.1.3 jmcneill #define MDM9607_VDDCX 0 115 1.1.1.3 jmcneill #define MDM9607_VDDCX_AO 1 116 1.1.1.3 jmcneill #define MDM9607_VDDCX_VFL 2 117 1.1.1.3 jmcneill #define MDM9607_VDDMX 3 118 1.1.1.3 jmcneill #define MDM9607_VDDMX_AO 4 119 1.1.1.3 jmcneill #define MDM9607_VDDMX_VFL 5 120 1.1.1.3 jmcneill 121 1.1.1.3 jmcneill /* MSM8939 Power Domains */ 122 1.1.1.3 jmcneill #define MSM8939_VDDMDCX 0 123 1.1.1.3 jmcneill #define MSM8939_VDDMDCX_AO 1 124 1.1.1.3 jmcneill #define MSM8939_VDDMDCX_VFC 2 125 1.1.1.3 jmcneill #define MSM8939_VDDCX 3 126 1.1.1.3 jmcneill #define MSM8939_VDDCX_AO 4 127 1.1.1.3 jmcneill #define MSM8939_VDDCX_VFC 5 128 1.1.1.3 jmcneill #define MSM8939_VDDMX 6 129 1.1.1.3 jmcneill #define MSM8939_VDDMX_AO 7 130 1.1.1.3 jmcneill 131 1.1.1.3 jmcneill /* MSM8916 Power Domain Indexes */ 132 1.1.1.3 jmcneill #define MSM8916_VDDCX 0 133 1.1.1.3 jmcneill #define MSM8916_VDDCX_AO 1 134 1.1.1.3 jmcneill #define MSM8916_VDDCX_VFC 2 135 1.1.1.3 jmcneill #define MSM8916_VDDMX 3 136 1.1.1.3 jmcneill #define MSM8916_VDDMX_AO 4 137 1.1.1.3 jmcneill 138 1.1.1.2 skrll /* MSM8976 Power Domain Indexes */ 139 1.1.1.2 skrll #define MSM8976_VDDCX 0 140 1.1.1.2 skrll #define MSM8976_VDDCX_AO 1 141 1.1.1.2 skrll #define MSM8976_VDDCX_VFL 2 142 1.1.1.2 skrll #define MSM8976_VDDMX 3 143 1.1.1.2 skrll #define MSM8976_VDDMX_AO 4 144 1.1.1.2 skrll #define MSM8976_VDDMX_VFL 5 145 1.1.1.2 skrll 146 1.1.1.3 jmcneill /* MSM8994 Power Domain Indexes */ 147 1.1.1.3 jmcneill #define MSM8994_VDDCX 0 148 1.1.1.3 jmcneill #define MSM8994_VDDCX_AO 1 149 1.1.1.3 jmcneill #define MSM8994_VDDCX_VFC 2 150 1.1.1.3 jmcneill #define MSM8994_VDDMX 3 151 1.1.1.3 jmcneill #define MSM8994_VDDMX_AO 4 152 1.1.1.3 jmcneill #define MSM8994_VDDGFX 5 153 1.1.1.3 jmcneill #define MSM8994_VDDGFX_VFC 6 154 1.1.1.3 jmcneill 155 1.1 jmcneill /* MSM8996 Power Domain Indexes */ 156 1.1 jmcneill #define MSM8996_VDDCX 0 157 1.1 jmcneill #define MSM8996_VDDCX_AO 1 158 1.1 jmcneill #define MSM8996_VDDCX_VFC 2 159 1.1 jmcneill #define MSM8996_VDDMX 3 160 1.1 jmcneill #define MSM8996_VDDMX_AO 4 161 1.1 jmcneill #define MSM8996_VDDSSCX 5 162 1.1 jmcneill #define MSM8996_VDDSSCX_VFC 6 163 1.1 jmcneill 164 1.1.1.2 skrll /* MSM8998 Power Domain Indexes */ 165 1.1.1.2 skrll #define MSM8998_VDDCX 0 166 1.1.1.2 skrll #define MSM8998_VDDCX_AO 1 167 1.1.1.2 skrll #define MSM8998_VDDCX_VFL 2 168 1.1.1.2 skrll #define MSM8998_VDDMX 3 169 1.1.1.2 skrll #define MSM8998_VDDMX_AO 4 170 1.1.1.2 skrll #define MSM8998_VDDMX_VFL 5 171 1.1.1.2 skrll #define MSM8998_SSCCX 6 172 1.1.1.2 skrll #define MSM8998_SSCCX_VFL 7 173 1.1.1.2 skrll #define MSM8998_SSCMX 8 174 1.1.1.2 skrll #define MSM8998_SSCMX_VFL 9 175 1.1.1.2 skrll 176 1.1.1.2 skrll /* QCS404 Power Domains */ 177 1.1.1.2 skrll #define QCS404_VDDMX 0 178 1.1.1.2 skrll #define QCS404_VDDMX_AO 1 179 1.1.1.2 skrll #define QCS404_VDDMX_VFL 2 180 1.1.1.2 skrll #define QCS404_LPICX 3 181 1.1.1.2 skrll #define QCS404_LPICX_VFL 4 182 1.1.1.2 skrll #define QCS404_LPIMX 5 183 1.1.1.2 skrll #define QCS404_LPIMX_VFL 6 184 1.1.1.2 skrll 185 1.1.1.3 jmcneill /* SDM660 Power Domains */ 186 1.1.1.3 jmcneill #define SDM660_VDDCX 0 187 1.1.1.3 jmcneill #define SDM660_VDDCX_AO 1 188 1.1.1.3 jmcneill #define SDM660_VDDCX_VFL 2 189 1.1.1.3 jmcneill #define SDM660_VDDMX 3 190 1.1.1.3 jmcneill #define SDM660_VDDMX_AO 4 191 1.1.1.3 jmcneill #define SDM660_VDDMX_VFL 5 192 1.1.1.3 jmcneill #define SDM660_SSCCX 6 193 1.1.1.3 jmcneill #define SDM660_SSCCX_VFL 7 194 1.1.1.3 jmcneill #define SDM660_SSCMX 8 195 1.1.1.3 jmcneill #define SDM660_SSCMX_VFL 9 196 1.1.1.3 jmcneill 197 1.1.1.3 jmcneill /* SM6115 Power Domains */ 198 1.1.1.3 jmcneill #define SM6115_VDDCX 0 199 1.1.1.3 jmcneill #define SM6115_VDDCX_AO 1 200 1.1.1.3 jmcneill #define SM6115_VDDCX_VFL 2 201 1.1.1.3 jmcneill #define SM6115_VDDMX 3 202 1.1.1.3 jmcneill #define SM6115_VDDMX_AO 4 203 1.1.1.3 jmcneill #define SM6115_VDDMX_VFL 5 204 1.1.1.3 jmcneill #define SM6115_VDD_LPI_CX 6 205 1.1.1.3 jmcneill #define SM6115_VDD_LPI_MX 7 206 1.1.1.3 jmcneill 207 1.1.1.2 skrll /* RPM SMD Power Domain performance levels */ 208 1.1.1.2 skrll #define RPM_SMD_LEVEL_RETENTION 16 209 1.1.1.2 skrll #define RPM_SMD_LEVEL_RETENTION_PLUS 32 210 1.1.1.2 skrll #define RPM_SMD_LEVEL_MIN_SVS 48 211 1.1.1.2 skrll #define RPM_SMD_LEVEL_LOW_SVS 64 212 1.1.1.2 skrll #define RPM_SMD_LEVEL_SVS 128 213 1.1.1.2 skrll #define RPM_SMD_LEVEL_SVS_PLUS 192 214 1.1.1.2 skrll #define RPM_SMD_LEVEL_NOM 256 215 1.1.1.2 skrll #define RPM_SMD_LEVEL_NOM_PLUS 320 216 1.1.1.2 skrll #define RPM_SMD_LEVEL_TURBO 384 217 1.1.1.2 skrll #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 218 1.1.1.2 skrll #define RPM_SMD_LEVEL_TURBO_HIGH 448 219 1.1.1.2 skrll #define RPM_SMD_LEVEL_BINNING 512 220 1.1.1.2 skrll 221 1.1 jmcneill #endif 222