1c6e6eff4SRajendra Nayak /* SPDX-License-Identifier: GPL-2.0 */ 2c6e6eff4SRajendra Nayak /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */ 3c6e6eff4SRajendra Nayak 4c6e6eff4SRajendra Nayak #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H 5c6e6eff4SRajendra Nayak #define _DT_BINDINGS_POWER_QCOM_RPMPD_H 6c6e6eff4SRajendra Nayak 7c6e6eff4SRajendra Nayak /* SDM845 Power Domain Indexes */ 8c6e6eff4SRajendra Nayak #define SDM845_EBI 0 9c6e6eff4SRajendra Nayak #define SDM845_MX 1 10c6e6eff4SRajendra Nayak #define SDM845_MX_AO 2 11c6e6eff4SRajendra Nayak #define SDM845_CX 3 12c6e6eff4SRajendra Nayak #define SDM845_CX_AO 4 13c6e6eff4SRajendra Nayak #define SDM845_LMX 5 14c6e6eff4SRajendra Nayak #define SDM845_LCX 6 15c6e6eff4SRajendra Nayak #define SDM845_GFX 7 16c6e6eff4SRajendra Nayak #define SDM845_MSS 8 17c6e6eff4SRajendra Nayak 18f365bd33SVinod Koul /* SDX55 Power Domain Indexes */ 19f365bd33SVinod Koul #define SDX55_MSS 0 20f365bd33SVinod Koul #define SDX55_MX 1 21f365bd33SVinod Koul #define SDX55_CX 2 22f365bd33SVinod Koul 23*92dde327SKonrad Dybcio /* SM6350 Power Domain Indexes */ 24*92dde327SKonrad Dybcio #define SM6350_CX 0 25*92dde327SKonrad Dybcio #define SM6350_GFX 1 26*92dde327SKonrad Dybcio #define SM6350_LCX 2 27*92dde327SKonrad Dybcio #define SM6350_LMX 3 28*92dde327SKonrad Dybcio #define SM6350_MSS 4 29*92dde327SKonrad Dybcio #define SM6350_MX 5 30*92dde327SKonrad Dybcio 3118ec173dSSibi Sankar /* SM8150 Power Domain Indexes */ 3218ec173dSSibi Sankar #define SM8150_MSS 0 3318ec173dSSibi Sankar #define SM8150_EBI 1 3418ec173dSSibi Sankar #define SM8150_LMX 2 3518ec173dSSibi Sankar #define SM8150_LCX 3 3618ec173dSSibi Sankar #define SM8150_GFX 4 3718ec173dSSibi Sankar #define SM8150_MX 5 3818ec173dSSibi Sankar #define SM8150_MX_AO 6 3918ec173dSSibi Sankar #define SM8150_CX 7 4018ec173dSSibi Sankar #define SM8150_CX_AO 8 4118ec173dSSibi Sankar #define SM8150_MMCX 9 4218ec173dSSibi Sankar #define SM8150_MMCX_AO 10 4318ec173dSSibi Sankar 4464016bb8SBjorn Andersson /* SM8250 Power Domain Indexes */ 4564016bb8SBjorn Andersson #define SM8250_CX 0 4664016bb8SBjorn Andersson #define SM8250_CX_AO 1 4764016bb8SBjorn Andersson #define SM8250_EBI 2 4864016bb8SBjorn Andersson #define SM8250_GFX 3 4964016bb8SBjorn Andersson #define SM8250_LCX 4 5064016bb8SBjorn Andersson #define SM8250_LMX 5 5164016bb8SBjorn Andersson #define SM8250_MMCX 6 5264016bb8SBjorn Andersson #define SM8250_MMCX_AO 7 5364016bb8SBjorn Andersson #define SM8250_MX 8 5464016bb8SBjorn Andersson #define SM8250_MX_AO 9 5564016bb8SBjorn Andersson 56f20b61b8SVinod Koul /* SM8350 Power Domain Indexes */ 57f20b61b8SVinod Koul #define SM8350_CX 0 58f20b61b8SVinod Koul #define SM8350_CX_AO 1 59f20b61b8SVinod Koul #define SM8350_EBI 2 60f20b61b8SVinod Koul #define SM8350_GFX 3 61f20b61b8SVinod Koul #define SM8350_LCX 4 62f20b61b8SVinod Koul #define SM8350_LMX 5 63f20b61b8SVinod Koul #define SM8350_MMCX 6 64f20b61b8SVinod Koul #define SM8350_MMCX_AO 7 65f20b61b8SVinod Koul #define SM8350_MX 8 66f20b61b8SVinod Koul #define SM8350_MX_AO 9 67f20b61b8SVinod Koul #define SM8350_MXC 10 68f20b61b8SVinod Koul #define SM8350_MXC_AO 11 69f20b61b8SVinod Koul #define SM8350_MSS 12 70f20b61b8SVinod Koul 7152a4cb57SSibi Sankar /* SC7180 Power Domain Indexes */ 7252a4cb57SSibi Sankar #define SC7180_CX 0 7352a4cb57SSibi Sankar #define SC7180_CX_AO 1 7452a4cb57SSibi Sankar #define SC7180_GFX 2 7552a4cb57SSibi Sankar #define SC7180_MX 3 7652a4cb57SSibi Sankar #define SC7180_MX_AO 4 7752a4cb57SSibi Sankar #define SC7180_LMX 5 7852a4cb57SSibi Sankar #define SC7180_LCX 6 7952a4cb57SSibi Sankar #define SC7180_MSS 7 8052a4cb57SSibi Sankar 819a3e49d7SRajendra Nayak /* SC7280 Power Domain Indexes */ 829a3e49d7SRajendra Nayak #define SC7280_CX 0 839a3e49d7SRajendra Nayak #define SC7280_CX_AO 1 849a3e49d7SRajendra Nayak #define SC7280_EBI 2 859a3e49d7SRajendra Nayak #define SC7280_GFX 3 869a3e49d7SRajendra Nayak #define SC7280_MX 4 879a3e49d7SRajendra Nayak #define SC7280_MX_AO 5 889a3e49d7SRajendra Nayak #define SC7280_LMX 6 899a3e49d7SRajendra Nayak #define SC7280_LCX 7 909a3e49d7SRajendra Nayak #define SC7280_MSS 8 919a3e49d7SRajendra Nayak 92dfa3d406SBjorn Andersson /* SC8180X Power Domain Indexes */ 93dfa3d406SBjorn Andersson #define SC8180X_CX 0 94dfa3d406SBjorn Andersson #define SC8180X_CX_AO 1 95dfa3d406SBjorn Andersson #define SC8180X_EBI 2 96dfa3d406SBjorn Andersson #define SC8180X_GFX 3 97dfa3d406SBjorn Andersson #define SC8180X_LCX 4 98dfa3d406SBjorn Andersson #define SC8180X_LMX 5 99dfa3d406SBjorn Andersson #define SC8180X_MMCX 6 100dfa3d406SBjorn Andersson #define SC8180X_MMCX_AO 7 101dfa3d406SBjorn Andersson #define SC8180X_MSS 8 102dfa3d406SBjorn Andersson #define SC8180X_MX 9 103dfa3d406SBjorn Andersson #define SC8180X_MX_AO 10 104dfa3d406SBjorn Andersson 105c6e6eff4SRajendra Nayak /* SDM845 Power Domain performance levels */ 106c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_RETENTION 16 107c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 108c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 109c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS 128 11087b517a8SJonathan Marek #define RPMH_REGULATOR_LEVEL_SVS_L0 144 111c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS_L1 192 11218ec173dSSibi Sankar #define RPMH_REGULATOR_LEVEL_SVS_L2 224 113c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM 256 114c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L1 320 115c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L2 336 116c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO 384 117c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 118c6e6eff4SRajendra Nayak 119af32011fSKonrad Dybcio /* MDM9607 Power Domains */ 120af32011fSKonrad Dybcio #define MDM9607_VDDCX 0 121af32011fSKonrad Dybcio #define MDM9607_VDDCX_AO 1 122af32011fSKonrad Dybcio #define MDM9607_VDDCX_VFL 2 123af32011fSKonrad Dybcio #define MDM9607_VDDMX 3 124af32011fSKonrad Dybcio #define MDM9607_VDDMX_AO 4 125af32011fSKonrad Dybcio #define MDM9607_VDDMX_VFL 5 126af32011fSKonrad Dybcio 1271dd50f17SJun Nie /* MSM8939 Power Domains */ 1281dd50f17SJun Nie #define MSM8939_VDDMDCX 0 1291dd50f17SJun Nie #define MSM8939_VDDMDCX_AO 1 1301dd50f17SJun Nie #define MSM8939_VDDMDCX_VFC 2 1311dd50f17SJun Nie #define MSM8939_VDDCX 3 1321dd50f17SJun Nie #define MSM8939_VDDCX_AO 4 1331dd50f17SJun Nie #define MSM8939_VDDCX_VFC 5 1341dd50f17SJun Nie #define MSM8939_VDDMX 6 1351dd50f17SJun Nie #define MSM8939_VDDMX_AO 7 1361dd50f17SJun Nie 137819f7d91SStephan Gerhold /* MSM8916 Power Domain Indexes */ 138819f7d91SStephan Gerhold #define MSM8916_VDDCX 0 139819f7d91SStephan Gerhold #define MSM8916_VDDCX_AO 1 140819f7d91SStephan Gerhold #define MSM8916_VDDCX_VFC 2 141819f7d91SStephan Gerhold #define MSM8916_VDDMX 3 142819f7d91SStephan Gerhold #define MSM8916_VDDMX_AO 4 143819f7d91SStephan Gerhold 144cdb6f604SVladimir Lypak /* MSM8953 Power Domain Indexes */ 145cdb6f604SVladimir Lypak #define MSM8953_VDDMD 0 146cdb6f604SVladimir Lypak #define MSM8953_VDDMD_AO 1 147cdb6f604SVladimir Lypak #define MSM8953_VDDCX 2 148cdb6f604SVladimir Lypak #define MSM8953_VDDCX_AO 3 149cdb6f604SVladimir Lypak #define MSM8953_VDDCX_VFL 4 150cdb6f604SVladimir Lypak #define MSM8953_VDDMX 5 151cdb6f604SVladimir Lypak #define MSM8953_VDDMX_AO 6 152cdb6f604SVladimir Lypak 153b1d52244SAngeloGioacchino Del Regno /* MSM8976 Power Domain Indexes */ 154b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX 0 155b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_AO 1 156b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_VFL 2 157b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX 3 158b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_AO 4 159b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_VFL 5 160b1d52244SAngeloGioacchino Del Regno 16143eb76a2SKonrad Dybcio /* MSM8994 Power Domain Indexes */ 16243eb76a2SKonrad Dybcio #define MSM8994_VDDCX 0 16343eb76a2SKonrad Dybcio #define MSM8994_VDDCX_AO 1 16443eb76a2SKonrad Dybcio #define MSM8994_VDDCX_VFC 2 16543eb76a2SKonrad Dybcio #define MSM8994_VDDMX 3 16643eb76a2SKonrad Dybcio #define MSM8994_VDDMX_AO 4 16743eb76a2SKonrad Dybcio #define MSM8994_VDDGFX 5 16843eb76a2SKonrad Dybcio #define MSM8994_VDDGFX_VFC 6 16943eb76a2SKonrad Dybcio 170c6e6eff4SRajendra Nayak /* MSM8996 Power Domain Indexes */ 171c6e6eff4SRajendra Nayak #define MSM8996_VDDCX 0 172c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_AO 1 173c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_VFC 2 174c6e6eff4SRajendra Nayak #define MSM8996_VDDMX 3 175c6e6eff4SRajendra Nayak #define MSM8996_VDDMX_AO 4 176c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX 5 177c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX_VFC 6 178c6e6eff4SRajendra Nayak 179dec9a05aSSibi Sankar /* MSM8998 Power Domain Indexes */ 180dec9a05aSSibi Sankar #define MSM8998_VDDCX 0 181dec9a05aSSibi Sankar #define MSM8998_VDDCX_AO 1 182dec9a05aSSibi Sankar #define MSM8998_VDDCX_VFL 2 183dec9a05aSSibi Sankar #define MSM8998_VDDMX 3 184dec9a05aSSibi Sankar #define MSM8998_VDDMX_AO 4 185dec9a05aSSibi Sankar #define MSM8998_VDDMX_VFL 5 186dec9a05aSSibi Sankar #define MSM8998_SSCCX 6 187dec9a05aSSibi Sankar #define MSM8998_SSCCX_VFL 7 188dec9a05aSSibi Sankar #define MSM8998_SSCMX 8 189dec9a05aSSibi Sankar #define MSM8998_SSCMX_VFL 9 190dec9a05aSSibi Sankar 1910cb93b15SBjorn Andersson /* QCS404 Power Domains */ 1920cb93b15SBjorn Andersson #define QCS404_VDDMX 0 1930cb93b15SBjorn Andersson #define QCS404_VDDMX_AO 1 1940cb93b15SBjorn Andersson #define QCS404_VDDMX_VFL 2 1950cb93b15SBjorn Andersson #define QCS404_LPICX 3 1960cb93b15SBjorn Andersson #define QCS404_LPICX_VFL 4 1970cb93b15SBjorn Andersson #define QCS404_LPIMX 5 1980cb93b15SBjorn Andersson #define QCS404_LPIMX_VFL 6 1990cb93b15SBjorn Andersson 200ee84049cSKonrad Dybcio /* SDM660 Power Domains */ 201ee84049cSKonrad Dybcio #define SDM660_VDDCX 0 202ee84049cSKonrad Dybcio #define SDM660_VDDCX_AO 1 203ee84049cSKonrad Dybcio #define SDM660_VDDCX_VFL 2 204ee84049cSKonrad Dybcio #define SDM660_VDDMX 3 205ee84049cSKonrad Dybcio #define SDM660_VDDMX_AO 4 206ee84049cSKonrad Dybcio #define SDM660_VDDMX_VFL 5 207ee84049cSKonrad Dybcio #define SDM660_SSCCX 6 208ee84049cSKonrad Dybcio #define SDM660_SSCCX_VFL 7 209ee84049cSKonrad Dybcio #define SDM660_SSCMX 8 210ee84049cSKonrad Dybcio #define SDM660_SSCMX_VFL 9 211ee84049cSKonrad Dybcio 21249a22c4aSIskren Chernev /* SM6115 Power Domains */ 21349a22c4aSIskren Chernev #define SM6115_VDDCX 0 21449a22c4aSIskren Chernev #define SM6115_VDDCX_AO 1 21549a22c4aSIskren Chernev #define SM6115_VDDCX_VFL 2 21649a22c4aSIskren Chernev #define SM6115_VDDMX 3 21749a22c4aSIskren Chernev #define SM6115_VDDMX_AO 4 21849a22c4aSIskren Chernev #define SM6115_VDDMX_VFL 5 21949a22c4aSIskren Chernev #define SM6115_VDD_LPI_CX 6 22049a22c4aSIskren Chernev #define SM6115_VDD_LPI_MX 7 22149a22c4aSIskren Chernev 2220cb93b15SBjorn Andersson /* RPM SMD Power Domain performance levels */ 2230cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION 16 2240cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION_PLUS 32 2250cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_MIN_SVS 48 2260cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_LOW_SVS 64 2270cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS 128 2280cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS_PLUS 192 2290cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM 256 2300cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM_PLUS 320 2310cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO 384 2320cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 2334bc6aadbSAngelo G. Del Regno #define RPM_SMD_LEVEL_TURBO_HIGH 448 2340cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_BINNING 512 2350cb93b15SBjorn Andersson 236c6e6eff4SRajendra Nayak #endif 237