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