1c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0 */ 2c66ec88fSEmmanuel Vadot /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */ 3c66ec88fSEmmanuel Vadot 4c66ec88fSEmmanuel Vadot #ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H 5c66ec88fSEmmanuel Vadot #define _DT_BINDINGS_POWER_QCOM_RPMPD_H 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadot /* SDM845 Power Domain Indexes */ 8c66ec88fSEmmanuel Vadot #define SDM845_EBI 0 9c66ec88fSEmmanuel Vadot #define SDM845_MX 1 10c66ec88fSEmmanuel Vadot #define SDM845_MX_AO 2 11c66ec88fSEmmanuel Vadot #define SDM845_CX 3 12c66ec88fSEmmanuel Vadot #define SDM845_CX_AO 4 13c66ec88fSEmmanuel Vadot #define SDM845_LMX 5 14c66ec88fSEmmanuel Vadot #define SDM845_LCX 6 15c66ec88fSEmmanuel Vadot #define SDM845_GFX 7 16c66ec88fSEmmanuel Vadot #define SDM845_MSS 8 17c66ec88fSEmmanuel Vadot 18*5def4c47SEmmanuel Vadot /* SDX55 Power Domain Indexes */ 19*5def4c47SEmmanuel Vadot #define SDX55_MSS 0 20*5def4c47SEmmanuel Vadot #define SDX55_MX 1 21*5def4c47SEmmanuel Vadot #define SDX55_CX 2 22*5def4c47SEmmanuel Vadot 23c66ec88fSEmmanuel Vadot /* SM8150 Power Domain Indexes */ 24c66ec88fSEmmanuel Vadot #define SM8150_MSS 0 25c66ec88fSEmmanuel Vadot #define SM8150_EBI 1 26c66ec88fSEmmanuel Vadot #define SM8150_LMX 2 27c66ec88fSEmmanuel Vadot #define SM8150_LCX 3 28c66ec88fSEmmanuel Vadot #define SM8150_GFX 4 29c66ec88fSEmmanuel Vadot #define SM8150_MX 5 30c66ec88fSEmmanuel Vadot #define SM8150_MX_AO 6 31c66ec88fSEmmanuel Vadot #define SM8150_CX 7 32c66ec88fSEmmanuel Vadot #define SM8150_CX_AO 8 33c66ec88fSEmmanuel Vadot #define SM8150_MMCX 9 34c66ec88fSEmmanuel Vadot #define SM8150_MMCX_AO 10 35c66ec88fSEmmanuel Vadot 36c66ec88fSEmmanuel Vadot /* SM8250 Power Domain Indexes */ 37c66ec88fSEmmanuel Vadot #define SM8250_CX 0 38c66ec88fSEmmanuel Vadot #define SM8250_CX_AO 1 39c66ec88fSEmmanuel Vadot #define SM8250_EBI 2 40c66ec88fSEmmanuel Vadot #define SM8250_GFX 3 41c66ec88fSEmmanuel Vadot #define SM8250_LCX 4 42c66ec88fSEmmanuel Vadot #define SM8250_LMX 5 43c66ec88fSEmmanuel Vadot #define SM8250_MMCX 6 44c66ec88fSEmmanuel Vadot #define SM8250_MMCX_AO 7 45c66ec88fSEmmanuel Vadot #define SM8250_MX 8 46c66ec88fSEmmanuel Vadot #define SM8250_MX_AO 9 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot /* SC7180 Power Domain Indexes */ 49c66ec88fSEmmanuel Vadot #define SC7180_CX 0 50c66ec88fSEmmanuel Vadot #define SC7180_CX_AO 1 51c66ec88fSEmmanuel Vadot #define SC7180_GFX 2 52c66ec88fSEmmanuel Vadot #define SC7180_MX 3 53c66ec88fSEmmanuel Vadot #define SC7180_MX_AO 4 54c66ec88fSEmmanuel Vadot #define SC7180_LMX 5 55c66ec88fSEmmanuel Vadot #define SC7180_LCX 6 56c66ec88fSEmmanuel Vadot #define SC7180_MSS 7 57c66ec88fSEmmanuel Vadot 58c66ec88fSEmmanuel Vadot /* SDM845 Power Domain performance levels */ 59c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_RETENTION 16 60c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_MIN_SVS 48 61c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_LOW_SVS 64 62c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_SVS 128 63c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_SVS_L0 144 64c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_SVS_L1 192 65c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_SVS_L2 224 66c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_NOM 256 67c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_NOM_L1 320 68c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_NOM_L2 336 69c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_TURBO 384 70c66ec88fSEmmanuel Vadot #define RPMH_REGULATOR_LEVEL_TURBO_L1 416 71c66ec88fSEmmanuel Vadot 72*5def4c47SEmmanuel Vadot /* MSM8939 Power Domains */ 73*5def4c47SEmmanuel Vadot #define MSM8939_VDDMDCX 0 74*5def4c47SEmmanuel Vadot #define MSM8939_VDDMDCX_AO 1 75*5def4c47SEmmanuel Vadot #define MSM8939_VDDMDCX_VFC 2 76*5def4c47SEmmanuel Vadot #define MSM8939_VDDCX 3 77*5def4c47SEmmanuel Vadot #define MSM8939_VDDCX_AO 4 78*5def4c47SEmmanuel Vadot #define MSM8939_VDDCX_VFC 5 79*5def4c47SEmmanuel Vadot #define MSM8939_VDDMX 6 80*5def4c47SEmmanuel Vadot #define MSM8939_VDDMX_AO 7 81*5def4c47SEmmanuel Vadot 82*5def4c47SEmmanuel Vadot /* MSM8916 Power Domain Indexes */ 83*5def4c47SEmmanuel Vadot #define MSM8916_VDDCX 0 84*5def4c47SEmmanuel Vadot #define MSM8916_VDDCX_AO 1 85*5def4c47SEmmanuel Vadot #define MSM8916_VDDCX_VFC 2 86*5def4c47SEmmanuel Vadot #define MSM8916_VDDMX 3 87*5def4c47SEmmanuel Vadot #define MSM8916_VDDMX_AO 4 88*5def4c47SEmmanuel Vadot 89c66ec88fSEmmanuel Vadot /* MSM8976 Power Domain Indexes */ 90c66ec88fSEmmanuel Vadot #define MSM8976_VDDCX 0 91c66ec88fSEmmanuel Vadot #define MSM8976_VDDCX_AO 1 92c66ec88fSEmmanuel Vadot #define MSM8976_VDDCX_VFL 2 93c66ec88fSEmmanuel Vadot #define MSM8976_VDDMX 3 94c66ec88fSEmmanuel Vadot #define MSM8976_VDDMX_AO 4 95c66ec88fSEmmanuel Vadot #define MSM8976_VDDMX_VFL 5 96c66ec88fSEmmanuel Vadot 97*5def4c47SEmmanuel Vadot /* MSM8994 Power Domain Indexes */ 98*5def4c47SEmmanuel Vadot #define MSM8994_VDDCX 0 99*5def4c47SEmmanuel Vadot #define MSM8994_VDDCX_AO 1 100*5def4c47SEmmanuel Vadot #define MSM8994_VDDCX_VFC 2 101*5def4c47SEmmanuel Vadot #define MSM8994_VDDMX 3 102*5def4c47SEmmanuel Vadot #define MSM8994_VDDMX_AO 4 103*5def4c47SEmmanuel Vadot #define MSM8994_VDDGFX 5 104*5def4c47SEmmanuel Vadot #define MSM8994_VDDGFX_VFC 6 105*5def4c47SEmmanuel Vadot 106c66ec88fSEmmanuel Vadot /* MSM8996 Power Domain Indexes */ 107c66ec88fSEmmanuel Vadot #define MSM8996_VDDCX 0 108c66ec88fSEmmanuel Vadot #define MSM8996_VDDCX_AO 1 109c66ec88fSEmmanuel Vadot #define MSM8996_VDDCX_VFC 2 110c66ec88fSEmmanuel Vadot #define MSM8996_VDDMX 3 111c66ec88fSEmmanuel Vadot #define MSM8996_VDDMX_AO 4 112c66ec88fSEmmanuel Vadot #define MSM8996_VDDSSCX 5 113c66ec88fSEmmanuel Vadot #define MSM8996_VDDSSCX_VFC 6 114c66ec88fSEmmanuel Vadot 115c66ec88fSEmmanuel Vadot /* MSM8998 Power Domain Indexes */ 116c66ec88fSEmmanuel Vadot #define MSM8998_VDDCX 0 117c66ec88fSEmmanuel Vadot #define MSM8998_VDDCX_AO 1 118c66ec88fSEmmanuel Vadot #define MSM8998_VDDCX_VFL 2 119c66ec88fSEmmanuel Vadot #define MSM8998_VDDMX 3 120c66ec88fSEmmanuel Vadot #define MSM8998_VDDMX_AO 4 121c66ec88fSEmmanuel Vadot #define MSM8998_VDDMX_VFL 5 122c66ec88fSEmmanuel Vadot #define MSM8998_SSCCX 6 123c66ec88fSEmmanuel Vadot #define MSM8998_SSCCX_VFL 7 124c66ec88fSEmmanuel Vadot #define MSM8998_SSCMX 8 125c66ec88fSEmmanuel Vadot #define MSM8998_SSCMX_VFL 9 126c66ec88fSEmmanuel Vadot 127c66ec88fSEmmanuel Vadot /* QCS404 Power Domains */ 128c66ec88fSEmmanuel Vadot #define QCS404_VDDMX 0 129c66ec88fSEmmanuel Vadot #define QCS404_VDDMX_AO 1 130c66ec88fSEmmanuel Vadot #define QCS404_VDDMX_VFL 2 131c66ec88fSEmmanuel Vadot #define QCS404_LPICX 3 132c66ec88fSEmmanuel Vadot #define QCS404_LPICX_VFL 4 133c66ec88fSEmmanuel Vadot #define QCS404_LPIMX 5 134c66ec88fSEmmanuel Vadot #define QCS404_LPIMX_VFL 6 135c66ec88fSEmmanuel Vadot 136*5def4c47SEmmanuel Vadot /* SDM660 Power Domains */ 137*5def4c47SEmmanuel Vadot #define SDM660_VDDCX 0 138*5def4c47SEmmanuel Vadot #define SDM660_VDDCX_AO 1 139*5def4c47SEmmanuel Vadot #define SDM660_VDDCX_VFL 2 140*5def4c47SEmmanuel Vadot #define SDM660_VDDMX 3 141*5def4c47SEmmanuel Vadot #define SDM660_VDDMX_AO 4 142*5def4c47SEmmanuel Vadot #define SDM660_VDDMX_VFL 5 143*5def4c47SEmmanuel Vadot #define SDM660_SSCCX 6 144*5def4c47SEmmanuel Vadot #define SDM660_SSCCX_VFL 7 145*5def4c47SEmmanuel Vadot #define SDM660_SSCMX 8 146*5def4c47SEmmanuel Vadot #define SDM660_SSCMX_VFL 9 147*5def4c47SEmmanuel Vadot 148c66ec88fSEmmanuel Vadot /* RPM SMD Power Domain performance levels */ 149c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_RETENTION 16 150c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_RETENTION_PLUS 32 151c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_MIN_SVS 48 152c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_LOW_SVS 64 153c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_SVS 128 154c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_SVS_PLUS 192 155c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_NOM 256 156c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_NOM_PLUS 320 157c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_TURBO 384 158c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_TURBO_NO_CPR 416 159c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_TURBO_HIGH 448 160c66ec88fSEmmanuel Vadot #define RPM_SMD_LEVEL_BINNING 512 161c66ec88fSEmmanuel Vadot 162c66ec88fSEmmanuel Vadot #endif 163