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 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 48f20b61b8SVinod Koul /* SM8350 Power Domain Indexes */ 49f20b61b8SVinod Koul #define SM8350_CX 0 50f20b61b8SVinod Koul #define SM8350_CX_AO 1 51f20b61b8SVinod Koul #define SM8350_EBI 2 52f20b61b8SVinod Koul #define SM8350_GFX 3 53f20b61b8SVinod Koul #define SM8350_LCX 4 54f20b61b8SVinod Koul #define SM8350_LMX 5 55f20b61b8SVinod Koul #define SM8350_MMCX 6 56f20b61b8SVinod Koul #define SM8350_MMCX_AO 7 57f20b61b8SVinod Koul #define SM8350_MX 8 58f20b61b8SVinod Koul #define SM8350_MX_AO 9 59f20b61b8SVinod Koul #define SM8350_MXC 10 60f20b61b8SVinod Koul #define SM8350_MXC_AO 11 61f20b61b8SVinod Koul #define SM8350_MSS 12 62f20b61b8SVinod Koul 6352a4cb57SSibi Sankar /* SC7180 Power Domain Indexes */ 6452a4cb57SSibi Sankar #define SC7180_CX 0 6552a4cb57SSibi Sankar #define SC7180_CX_AO 1 6652a4cb57SSibi Sankar #define SC7180_GFX 2 6752a4cb57SSibi Sankar #define SC7180_MX 3 6852a4cb57SSibi Sankar #define SC7180_MX_AO 4 6952a4cb57SSibi Sankar #define SC7180_LMX 5 7052a4cb57SSibi Sankar #define SC7180_LCX 6 7152a4cb57SSibi Sankar #define SC7180_MSS 7 7252a4cb57SSibi Sankar 739a3e49d7SRajendra Nayak /* SC7280 Power Domain Indexes */ 749a3e49d7SRajendra Nayak #define SC7280_CX 0 759a3e49d7SRajendra Nayak #define SC7280_CX_AO 1 769a3e49d7SRajendra Nayak #define SC7280_EBI 2 779a3e49d7SRajendra Nayak #define SC7280_GFX 3 789a3e49d7SRajendra Nayak #define SC7280_MX 4 799a3e49d7SRajendra Nayak #define SC7280_MX_AO 5 809a3e49d7SRajendra Nayak #define SC7280_LMX 6 819a3e49d7SRajendra Nayak #define SC7280_LCX 7 829a3e49d7SRajendra Nayak #define SC7280_MSS 8 839a3e49d7SRajendra Nayak 84*dfa3d406SBjorn Andersson /* SC8180X Power Domain Indexes */ 85*dfa3d406SBjorn Andersson #define SC8180X_CX 0 86*dfa3d406SBjorn Andersson #define SC8180X_CX_AO 1 87*dfa3d406SBjorn Andersson #define SC8180X_EBI 2 88*dfa3d406SBjorn Andersson #define SC8180X_GFX 3 89*dfa3d406SBjorn Andersson #define SC8180X_LCX 4 90*dfa3d406SBjorn Andersson #define SC8180X_LMX 5 91*dfa3d406SBjorn Andersson #define SC8180X_MMCX 6 92*dfa3d406SBjorn Andersson #define SC8180X_MMCX_AO 7 93*dfa3d406SBjorn Andersson #define SC8180X_MSS 8 94*dfa3d406SBjorn Andersson #define SC8180X_MX 9 95*dfa3d406SBjorn Andersson #define SC8180X_MX_AO 10 96*dfa3d406SBjorn Andersson 97c6e6eff4SRajendra Nayak /* SDM845 Power Domain performance levels */ 98c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_RETENTION 16 99c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 100c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 101c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS 128 10287b517a8SJonathan Marek #define RPMH_REGULATOR_LEVEL_SVS_L0 144 103c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_SVS_L1 192 10418ec173dSSibi Sankar #define RPMH_REGULATOR_LEVEL_SVS_L2 224 105c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM 256 106c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L1 320 107c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_NOM_L2 336 108c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO 384 109c6e6eff4SRajendra Nayak #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 110c6e6eff4SRajendra Nayak 1111dd50f17SJun Nie /* MSM8939 Power Domains */ 1121dd50f17SJun Nie #define MSM8939_VDDMDCX 0 1131dd50f17SJun Nie #define MSM8939_VDDMDCX_AO 1 1141dd50f17SJun Nie #define MSM8939_VDDMDCX_VFC 2 1151dd50f17SJun Nie #define MSM8939_VDDCX 3 1161dd50f17SJun Nie #define MSM8939_VDDCX_AO 4 1171dd50f17SJun Nie #define MSM8939_VDDCX_VFC 5 1181dd50f17SJun Nie #define MSM8939_VDDMX 6 1191dd50f17SJun Nie #define MSM8939_VDDMX_AO 7 1201dd50f17SJun Nie 121819f7d91SStephan Gerhold /* MSM8916 Power Domain Indexes */ 122819f7d91SStephan Gerhold #define MSM8916_VDDCX 0 123819f7d91SStephan Gerhold #define MSM8916_VDDCX_AO 1 124819f7d91SStephan Gerhold #define MSM8916_VDDCX_VFC 2 125819f7d91SStephan Gerhold #define MSM8916_VDDMX 3 126819f7d91SStephan Gerhold #define MSM8916_VDDMX_AO 4 127819f7d91SStephan Gerhold 128b1d52244SAngeloGioacchino Del Regno /* MSM8976 Power Domain Indexes */ 129b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX 0 130b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_AO 1 131b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDCX_VFL 2 132b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX 3 133b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_AO 4 134b1d52244SAngeloGioacchino Del Regno #define MSM8976_VDDMX_VFL 5 135b1d52244SAngeloGioacchino Del Regno 13643eb76a2SKonrad Dybcio /* MSM8994 Power Domain Indexes */ 13743eb76a2SKonrad Dybcio #define MSM8994_VDDCX 0 13843eb76a2SKonrad Dybcio #define MSM8994_VDDCX_AO 1 13943eb76a2SKonrad Dybcio #define MSM8994_VDDCX_VFC 2 14043eb76a2SKonrad Dybcio #define MSM8994_VDDMX 3 14143eb76a2SKonrad Dybcio #define MSM8994_VDDMX_AO 4 14243eb76a2SKonrad Dybcio #define MSM8994_VDDGFX 5 14343eb76a2SKonrad Dybcio #define MSM8994_VDDGFX_VFC 6 14443eb76a2SKonrad Dybcio 145c6e6eff4SRajendra Nayak /* MSM8996 Power Domain Indexes */ 146c6e6eff4SRajendra Nayak #define MSM8996_VDDCX 0 147c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_AO 1 148c6e6eff4SRajendra Nayak #define MSM8996_VDDCX_VFC 2 149c6e6eff4SRajendra Nayak #define MSM8996_VDDMX 3 150c6e6eff4SRajendra Nayak #define MSM8996_VDDMX_AO 4 151c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX 5 152c6e6eff4SRajendra Nayak #define MSM8996_VDDSSCX_VFC 6 153c6e6eff4SRajendra Nayak 154dec9a05aSSibi Sankar /* MSM8998 Power Domain Indexes */ 155dec9a05aSSibi Sankar #define MSM8998_VDDCX 0 156dec9a05aSSibi Sankar #define MSM8998_VDDCX_AO 1 157dec9a05aSSibi Sankar #define MSM8998_VDDCX_VFL 2 158dec9a05aSSibi Sankar #define MSM8998_VDDMX 3 159dec9a05aSSibi Sankar #define MSM8998_VDDMX_AO 4 160dec9a05aSSibi Sankar #define MSM8998_VDDMX_VFL 5 161dec9a05aSSibi Sankar #define MSM8998_SSCCX 6 162dec9a05aSSibi Sankar #define MSM8998_SSCCX_VFL 7 163dec9a05aSSibi Sankar #define MSM8998_SSCMX 8 164dec9a05aSSibi Sankar #define MSM8998_SSCMX_VFL 9 165dec9a05aSSibi Sankar 1660cb93b15SBjorn Andersson /* QCS404 Power Domains */ 1670cb93b15SBjorn Andersson #define QCS404_VDDMX 0 1680cb93b15SBjorn Andersson #define QCS404_VDDMX_AO 1 1690cb93b15SBjorn Andersson #define QCS404_VDDMX_VFL 2 1700cb93b15SBjorn Andersson #define QCS404_LPICX 3 1710cb93b15SBjorn Andersson #define QCS404_LPICX_VFL 4 1720cb93b15SBjorn Andersson #define QCS404_LPIMX 5 1730cb93b15SBjorn Andersson #define QCS404_LPIMX_VFL 6 1740cb93b15SBjorn Andersson 175ee84049cSKonrad Dybcio /* SDM660 Power Domains */ 176ee84049cSKonrad Dybcio #define SDM660_VDDCX 0 177ee84049cSKonrad Dybcio #define SDM660_VDDCX_AO 1 178ee84049cSKonrad Dybcio #define SDM660_VDDCX_VFL 2 179ee84049cSKonrad Dybcio #define SDM660_VDDMX 3 180ee84049cSKonrad Dybcio #define SDM660_VDDMX_AO 4 181ee84049cSKonrad Dybcio #define SDM660_VDDMX_VFL 5 182ee84049cSKonrad Dybcio #define SDM660_SSCCX 6 183ee84049cSKonrad Dybcio #define SDM660_SSCCX_VFL 7 184ee84049cSKonrad Dybcio #define SDM660_SSCMX 8 185ee84049cSKonrad Dybcio #define SDM660_SSCMX_VFL 9 186ee84049cSKonrad Dybcio 1870cb93b15SBjorn Andersson /* RPM SMD Power Domain performance levels */ 1880cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION 16 1890cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_RETENTION_PLUS 32 1900cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_MIN_SVS 48 1910cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_LOW_SVS 64 1920cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS 128 1930cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_SVS_PLUS 192 1940cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM 256 1950cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_NOM_PLUS 320 1960cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO 384 1970cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 1984bc6aadbSAngelo G. Del Regno #define RPM_SMD_LEVEL_TURBO_HIGH 448 1990cb93b15SBjorn Andersson #define RPM_SMD_LEVEL_BINNING 512 2000cb93b15SBjorn Andersson 201c6e6eff4SRajendra Nayak #endif 202