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 18*f365bd33SVinod Koul /* SDX55 Power Domain Indexes */ 19*f365bd33SVinod Koul #define SDX55_MSS 0 20*f365bd33SVinod Koul #define SDX55_MX 1 21*f365bd33SVinod Koul #define SDX55_CX 2 22*f365bd33SVinod Koul 2318ec173dSSibi Sankar /* SM8150 Power Domain Indexes */ 2418ec173dSSibi Sankar #define SM8150_MSS 0 2518ec173dSSibi Sankar #define SM8150_EBI 1 2618ec173dSSibi Sankar #define SM8150_LMX 2 2718ec173dSSibi Sankar #define SM8150_LCX 3 2818ec173dSSibi Sankar #define SM8150_GFX 4 2918ec173dSSibi Sankar #define SM8150_MX 5 3018ec173dSSibi Sankar #define SM8150_MX_AO 6 3118ec173dSSibi Sankar #define SM8150_CX 7 3218ec173dSSibi Sankar #define SM8150_CX_AO 8 3318ec173dSSibi Sankar #define SM8150_MMCX 9 3418ec173dSSibi Sankar #define SM8150_MMCX_AO 10 3518ec173dSSibi Sankar 3664016bb8SBjorn Andersson /* SM8250 Power Domain Indexes */ 3764016bb8SBjorn Andersson #define SM8250_CX 0 3864016bb8SBjorn Andersson #define SM8250_CX_AO 1 3964016bb8SBjorn Andersson #define SM8250_EBI 2 4064016bb8SBjorn Andersson #define SM8250_GFX 3 4164016bb8SBjorn Andersson #define SM8250_LCX 4 4264016bb8SBjorn Andersson #define SM8250_LMX 5 4364016bb8SBjorn Andersson #define SM8250_MMCX 6 4464016bb8SBjorn Andersson #define SM8250_MMCX_AO 7 4564016bb8SBjorn Andersson #define SM8250_MX 8 4664016bb8SBjorn Andersson #define SM8250_MX_AO 9 4764016bb8SBjorn Andersson 4852a4cb57SSibi Sankar /* SC7180 Power Domain Indexes */ 4952a4cb57SSibi Sankar #define SC7180_CX 0 5052a4cb57SSibi Sankar #define SC7180_CX_AO 1 5152a4cb57SSibi Sankar #define SC7180_GFX 2 5252a4cb57SSibi Sankar #define SC7180_MX 3 5352a4cb57SSibi Sankar #define SC7180_MX_AO 4 5452a4cb57SSibi Sankar #define SC7180_LMX 5 5552a4cb57SSibi Sankar #define SC7180_LCX 6 5652a4cb57SSibi Sankar #define SC7180_MSS 7 5752a4cb57SSibi Sankar 58c6e6eff4SRajendra Nayak /* SDM845 Power Domain performance levels */ 59c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_RETENTION 16 60c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 61c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 62c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS 128 6387b517a8SJonathan Marek #define RPMH_REGULATOR_LEVEL_SVS_L0 144 64c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS_L1 192 6518ec173dSSibi Sankar #define RPMH_REGULATOR_LEVEL_SVS_L2 224 66c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM 256 67c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L1 320 68c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L2 336 69c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO 384 70c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 71c6e6eff4SRajendra Nayak 721dd50f17SJun Nie /* MSM8939 Power Domains */ 731dd50f17SJun Nie #define MSM8939_VDDMDCX 0 741dd50f17SJun Nie #define MSM8939_VDDMDCX_AO 1 751dd50f17SJun Nie #define MSM8939_VDDMDCX_VFC 2 761dd50f17SJun Nie #define MSM8939_VDDCX 3 771dd50f17SJun Nie #define MSM8939_VDDCX_AO 4 781dd50f17SJun Nie #define MSM8939_VDDCX_VFC 5 791dd50f17SJun Nie #define MSM8939_VDDMX 6 801dd50f17SJun Nie #define MSM8939_VDDMX_AO 7 811dd50f17SJun Nie 82819f7d91SStephan Gerhold /* MSM8916 Power Domain Indexes */ 83819f7d91SStephan Gerhold #define MSM8916_VDDCX 0 84819f7d91SStephan Gerhold #define MSM8916_VDDCX_AO 1 85819f7d91SStephan Gerhold #define MSM8916_VDDCX_VFC 2 86819f7d91SStephan Gerhold #define MSM8916_VDDMX 3 87819f7d91SStephan Gerhold #define MSM8916_VDDMX_AO 4 88819f7d91SStephan Gerhold 89b1d52244SAngeloGioacchino Del Regno /* MSM8976 Power Domain Indexes */ 90b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX 0 91b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_AO 1 92b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_VFL 2 93b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX 3 94b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_AO 4 95b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_VFL 5 96b1d52244SAngeloGioacchino Del Regno 97c6e6eff4SRajendra Nayak /* MSM8996 Power Domain Indexes */ 98c6e6eff4SRajendra Nayak #define MSM8996_VDDCX 0 99c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_AO 1 100c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_VFC 2 101c6e6eff4SRajendra Nayak #define MSM8996_VDDMX 3 102c6e6eff4SRajendra Nayak #define MSM8996_VDDMX_AO 4 103c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX 5 104c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX_VFC 6 105c6e6eff4SRajendra Nayak 106dec9a05aSSibi Sankar /* MSM8998 Power Domain Indexes */ 107dec9a05aSSibi Sankar #define MSM8998_VDDCX 0 108dec9a05aSSibi Sankar #define MSM8998_VDDCX_AO 1 109dec9a05aSSibi Sankar #define MSM8998_VDDCX_VFL 2 110dec9a05aSSibi Sankar #define MSM8998_VDDMX 3 111dec9a05aSSibi Sankar #define MSM8998_VDDMX_AO 4 112dec9a05aSSibi Sankar #define MSM8998_VDDMX_VFL 5 113dec9a05aSSibi Sankar #define MSM8998_SSCCX 6 114dec9a05aSSibi Sankar #define MSM8998_SSCCX_VFL 7 115dec9a05aSSibi Sankar #define MSM8998_SSCMX 8 116dec9a05aSSibi Sankar #define MSM8998_SSCMX_VFL 9 117dec9a05aSSibi Sankar 1180cb93b15SBjorn Andersson /* QCS404 Power Domains */ 1190cb93b15SBjorn Andersson #define QCS404_VDDMX 0 1200cb93b15SBjorn Andersson #define QCS404_VDDMX_AO 1 1210cb93b15SBjorn Andersson #define QCS404_VDDMX_VFL 2 1220cb93b15SBjorn Andersson #define QCS404_LPICX 3 1230cb93b15SBjorn Andersson #define QCS404_LPICX_VFL 4 1240cb93b15SBjorn Andersson #define QCS404_LPIMX 5 1250cb93b15SBjorn Andersson #define QCS404_LPIMX_VFL 6 1260cb93b15SBjorn Andersson 127ee84049cSKonrad Dybcio /* SDM660 Power Domains */ 128ee84049cSKonrad Dybcio #define SDM660_VDDCX 0 129ee84049cSKonrad Dybcio #define SDM660_VDDCX_AO 1 130ee84049cSKonrad Dybcio #define SDM660_VDDCX_VFL 2 131ee84049cSKonrad Dybcio #define SDM660_VDDMX 3 132ee84049cSKonrad Dybcio #define SDM660_VDDMX_AO 4 133ee84049cSKonrad Dybcio #define SDM660_VDDMX_VFL 5 134ee84049cSKonrad Dybcio #define SDM660_SSCCX 6 135ee84049cSKonrad Dybcio #define SDM660_SSCCX_VFL 7 136ee84049cSKonrad Dybcio #define SDM660_SSCMX 8 137ee84049cSKonrad Dybcio #define SDM660_SSCMX_VFL 9 138ee84049cSKonrad Dybcio 1390cb93b15SBjorn Andersson /* RPM SMD Power Domain performance levels */ 1400cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION 16 1410cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION_PLUS 32 1420cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_MIN_SVS 48 1430cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_LOW_SVS 64 1440cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS 128 1450cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS_PLUS 192 1460cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM 256 1470cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM_PLUS 320 1480cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO 384 1490cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 1504bc6aadbSAngelo G. Del Regno #define RPM_SMD_LEVEL_TURBO_HIGH 448 1510cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_BINNING 512 1520cb93b15SBjorn Andersson 153c6e6eff4SRajendra Nayak #endif 154