420 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/* Copyright (c) 2018, The Linux Foundation. All rights reserved. */3 4#ifndef _DT_BINDINGS_POWER_QCOM_RPMPD_H5#define _DT_BINDINGS_POWER_QCOM_RPMPD_H6 7/* SA8775P Power Domain Indexes */8#define SA8775P_CX 09#define SA8775P_CX_AO 110#define SA8775P_DDR 211#define SA8775P_EBI 312#define SA8775P_GFX 413#define SA8775P_LCX 514#define SA8775P_LMX 615#define SA8775P_MMCX 716#define SA8775P_MMCX_AO 817#define SA8775P_MSS 918#define SA8775P_MX 1019#define SA8775P_MX_AO 1120#define SA8775P_MXC 1221#define SA8775P_MXC_AO 1322#define SA8775P_NSP0 1423#define SA8775P_NSP1 1524#define SA8775P_XO 1625 26/* SDM670 Power Domain Indexes */27#define SDM670_MX 028#define SDM670_MX_AO 129#define SDM670_CX 230#define SDM670_CX_AO 331#define SDM670_LMX 432#define SDM670_LCX 533#define SDM670_GFX 634#define SDM670_MSS 735 36/* SDM845 Power Domain Indexes */37#define SDM845_EBI 038#define SDM845_MX 139#define SDM845_MX_AO 240#define SDM845_CX 341#define SDM845_CX_AO 442#define SDM845_LMX 543#define SDM845_LCX 644#define SDM845_GFX 745#define SDM845_MSS 846 47/* SDX55 Power Domain Indexes */48#define SDX55_MSS 049#define SDX55_MX 150#define SDX55_CX 251 52/* SDX65 Power Domain Indexes */53#define SDX65_MSS 054#define SDX65_MX 155#define SDX65_MX_AO 256#define SDX65_CX 357#define SDX65_CX_AO 458#define SDX65_MXC 559 60/* SM6350 Power Domain Indexes */61#define SM6350_CX 062#define SM6350_GFX 163#define SM6350_LCX 264#define SM6350_LMX 365#define SM6350_MSS 466#define SM6350_MX 567 68/* SM6350 Power Domain Indexes */69#define SM6375_VDDCX 070#define SM6375_VDDCX_AO 171#define SM6375_VDDCX_VFL 272#define SM6375_VDDMX 373#define SM6375_VDDMX_AO 474#define SM6375_VDDMX_VFL 575#define SM6375_VDDGX 676#define SM6375_VDDGX_AO 777#define SM6375_VDD_LPI_CX 878#define SM6375_VDD_LPI_MX 979 80/* SM8150 Power Domain Indexes */81#define SM8150_MSS 082#define SM8150_EBI 183#define SM8150_LMX 284#define SM8150_LCX 385#define SM8150_GFX 486#define SM8150_MX 587#define SM8150_MX_AO 688#define SM8150_CX 789#define SM8150_CX_AO 890#define SM8150_MMCX 991#define SM8150_MMCX_AO 1092 93/* SA8155P is a special case, kept for backwards compatibility */94#define SA8155P_CX SM8150_CX95#define SA8155P_CX_AO SM8150_CX_AO96#define SA8155P_EBI SM8150_EBI97#define SA8155P_GFX SM8150_GFX98#define SA8155P_MSS SM8150_MSS99#define SA8155P_MX SM8150_MX100#define SA8155P_MX_AO SM8150_MX_AO101 102/* SM8250 Power Domain Indexes */103#define SM8250_CX 0104#define SM8250_CX_AO 1105#define SM8250_EBI 2106#define SM8250_GFX 3107#define SM8250_LCX 4108#define SM8250_LMX 5109#define SM8250_MMCX 6110#define SM8250_MMCX_AO 7111#define SM8250_MX 8112#define SM8250_MX_AO 9113 114/* SM8350 Power Domain Indexes */115#define SM8350_CX 0116#define SM8350_CX_AO 1117#define SM8350_EBI 2118#define SM8350_GFX 3119#define SM8350_LCX 4120#define SM8350_LMX 5121#define SM8350_MMCX 6122#define SM8350_MMCX_AO 7123#define SM8350_MX 8124#define SM8350_MX_AO 9125#define SM8350_MXC 10126#define SM8350_MXC_AO 11127#define SM8350_MSS 12128 129/* SM8450 Power Domain Indexes */130#define SM8450_CX 0131#define SM8450_CX_AO 1132#define SM8450_EBI 2133#define SM8450_GFX 3134#define SM8450_LCX 4135#define SM8450_LMX 5136#define SM8450_MMCX 6137#define SM8450_MMCX_AO 7138#define SM8450_MX 8139#define SM8450_MX_AO 9140#define SM8450_MXC 10141#define SM8450_MXC_AO 11142#define SM8450_MSS 12143 144/* SM8550 Power Domain Indexes */145#define SM8550_CX 0146#define SM8550_CX_AO 1147#define SM8550_EBI 2148#define SM8550_GFX 3149#define SM8550_LCX 4150#define SM8550_LMX 5151#define SM8550_MMCX 6152#define SM8550_MMCX_AO 7153#define SM8550_MX 8154#define SM8550_MX_AO 9155#define SM8550_MXC 10156#define SM8550_MXC_AO 11157#define SM8550_MSS 12158#define SM8550_NSP 13159 160/* QDU1000/QRU1000 Power Domain Indexes */161#define QDU1000_EBI 0162#define QDU1000_MSS 1163#define QDU1000_CX 2164#define QDU1000_MX 3165 166/* SC7180 Power Domain Indexes */167#define SC7180_CX 0168#define SC7180_CX_AO 1169#define SC7180_GFX 2170#define SC7180_MX 3171#define SC7180_MX_AO 4172#define SC7180_LMX 5173#define SC7180_LCX 6174#define SC7180_MSS 7175 176/* SC7280 Power Domain Indexes */177#define SC7280_CX 0178#define SC7280_CX_AO 1179#define SC7280_EBI 2180#define SC7280_GFX 3181#define SC7280_MX 4182#define SC7280_MX_AO 5183#define SC7280_LMX 6184#define SC7280_LCX 7185#define SC7280_MSS 8186 187/* SC8180X Power Domain Indexes */188#define SC8180X_CX 0189#define SC8180X_CX_AO 1190#define SC8180X_EBI 2191#define SC8180X_GFX 3192#define SC8180X_LCX 4193#define SC8180X_LMX 5194#define SC8180X_MMCX 6195#define SC8180X_MMCX_AO 7196#define SC8180X_MSS 8197#define SC8180X_MX 9198#define SC8180X_MX_AO 10199 200/* SC8280XP Power Domain Indexes */201#define SC8280XP_CX 0202#define SC8280XP_CX_AO 1203#define SC8280XP_DDR 2204#define SC8280XP_EBI 3205#define SC8280XP_GFX 4206#define SC8280XP_LCX 5207#define SC8280XP_LMX 6208#define SC8280XP_MMCX 7209#define SC8280XP_MMCX_AO 8210#define SC8280XP_MSS 9211#define SC8280XP_MX 10212#define SC8280XP_MXC 12213#define SC8280XP_MX_AO 11214#define SC8280XP_NSP 13215#define SC8280XP_QPHY 14216#define SC8280XP_XO 15217 218/* SDM845 Power Domain performance levels */219#define RPMH_REGULATOR_LEVEL_RETENTION 16220#define RPMH_REGULATOR_LEVEL_MIN_SVS 48221#define RPMH_REGULATOR_LEVEL_LOW_SVS_D2 52222#define RPMH_REGULATOR_LEVEL_LOW_SVS_D1 56223#define RPMH_REGULATOR_LEVEL_LOW_SVS_D0 60224#define RPMH_REGULATOR_LEVEL_LOW_SVS 64225#define RPMH_REGULATOR_LEVEL_LOW_SVS_P1 72226#define RPMH_REGULATOR_LEVEL_LOW_SVS_L1 80227#define RPMH_REGULATOR_LEVEL_LOW_SVS_L2 96228#define RPMH_REGULATOR_LEVEL_SVS 128229#define RPMH_REGULATOR_LEVEL_SVS_L0 144230#define RPMH_REGULATOR_LEVEL_SVS_L1 192231#define RPMH_REGULATOR_LEVEL_SVS_L2 224232#define RPMH_REGULATOR_LEVEL_NOM 256233#define RPMH_REGULATOR_LEVEL_NOM_L0 288234#define RPMH_REGULATOR_LEVEL_NOM_L1 320235#define RPMH_REGULATOR_LEVEL_NOM_L2 336236#define RPMH_REGULATOR_LEVEL_TURBO 384237#define RPMH_REGULATOR_LEVEL_TURBO_L0 400238#define RPMH_REGULATOR_LEVEL_TURBO_L1 416239#define RPMH_REGULATOR_LEVEL_TURBO_L2 432240#define RPMH_REGULATOR_LEVEL_TURBO_L3 448241#define RPMH_REGULATOR_LEVEL_SUPER_TURBO 464242#define RPMH_REGULATOR_LEVEL_SUPER_TURBO_NO_CPR 480243 244/* MDM9607 Power Domains */245#define MDM9607_VDDCX 0246#define MDM9607_VDDCX_AO 1247#define MDM9607_VDDCX_VFL 2248#define MDM9607_VDDMX 3249#define MDM9607_VDDMX_AO 4250#define MDM9607_VDDMX_VFL 5251 252/* MSM8226 Power Domain Indexes */253#define MSM8226_VDDCX 0254#define MSM8226_VDDCX_AO 1255#define MSM8226_VDDCX_VFC 2256 257/* MSM8939 Power Domains */258#define MSM8939_VDDMDCX 0259#define MSM8939_VDDMDCX_AO 1260#define MSM8939_VDDMDCX_VFC 2261#define MSM8939_VDDCX 3262#define MSM8939_VDDCX_AO 4263#define MSM8939_VDDCX_VFC 5264#define MSM8939_VDDMX 6265#define MSM8939_VDDMX_AO 7266 267/* MSM8916 Power Domain Indexes */268#define MSM8916_VDDCX 0269#define MSM8916_VDDCX_AO 1270#define MSM8916_VDDCX_VFC 2271#define MSM8916_VDDMX 3272#define MSM8916_VDDMX_AO 4273 274/* MSM8909 Power Domain Indexes */275#define MSM8909_VDDCX MSM8916_VDDCX276#define MSM8909_VDDCX_AO MSM8916_VDDCX_AO277#define MSM8909_VDDCX_VFC MSM8916_VDDCX_VFC278#define MSM8909_VDDMX MSM8916_VDDMX279#define MSM8909_VDDMX_AO MSM8916_VDDMX_AO280 281/* MSM8917 Power Domain Indexes */282#define MSM8917_VDDCX 0283#define MSM8917_VDDCX_AO 1284#define MSM8917_VDDCX_VFL 2285#define MSM8917_VDDMX 3286#define MSM8917_VDDMX_AO 4287 288/* MSM8937 Power Domain Indexes */289#define MSM8937_VDDCX MSM8917_VDDCX290#define MSM8937_VDDCX_AO MSM8917_VDDCX_AO291#define MSM8937_VDDCX_VFL MSM8917_VDDCX_VFL292#define MSM8937_VDDMX MSM8917_VDDMX293#define MSM8937_VDDMX_AO MSM8917_VDDMX_AO294 295/* QM215 Power Domain Indexes */296#define QM215_VDDCX MSM8917_VDDCX297#define QM215_VDDCX_AO MSM8917_VDDCX_AO298#define QM215_VDDCX_VFL MSM8917_VDDCX_VFL299#define QM215_VDDMX MSM8917_VDDMX300#define QM215_VDDMX_AO MSM8917_VDDMX_AO301 302/* MSM8953 Power Domain Indexes */303#define MSM8953_VDDMD 0304#define MSM8953_VDDMD_AO 1305#define MSM8953_VDDCX 2306#define MSM8953_VDDCX_AO 3307#define MSM8953_VDDCX_VFL 4308#define MSM8953_VDDMX 5309#define MSM8953_VDDMX_AO 6310 311/* MSM8974 Power Domain Indexes */312#define MSM8974_VDDCX 0313#define MSM8974_VDDCX_AO 1314#define MSM8974_VDDCX_VFC 2315#define MSM8974_VDDGFX 3316#define MSM8974_VDDGFX_VFC 4317 318/* MSM8976 Power Domain Indexes */319#define MSM8976_VDDCX 0320#define MSM8976_VDDCX_AO 1321#define MSM8976_VDDCX_VFL 2322#define MSM8976_VDDMX 3323#define MSM8976_VDDMX_AO 4324#define MSM8976_VDDMX_VFL 5325 326/* MSM8994 Power Domain Indexes */327#define MSM8994_VDDCX 0328#define MSM8994_VDDCX_AO 1329#define MSM8994_VDDCX_VFC 2330#define MSM8994_VDDMX 3331#define MSM8994_VDDMX_AO 4332#define MSM8994_VDDGFX 5333#define MSM8994_VDDGFX_VFC 6334 335/* MSM8996 Power Domain Indexes */336#define MSM8996_VDDCX 0337#define MSM8996_VDDCX_AO 1338#define MSM8996_VDDCX_VFC 2339#define MSM8996_VDDMX 3340#define MSM8996_VDDMX_AO 4341#define MSM8996_VDDSSCX 5342#define MSM8996_VDDSSCX_VFC 6343 344/* MSM8998 Power Domain Indexes */345#define MSM8998_VDDCX 0346#define MSM8998_VDDCX_AO 1347#define MSM8998_VDDCX_VFL 2348#define MSM8998_VDDMX 3349#define MSM8998_VDDMX_AO 4350#define MSM8998_VDDMX_VFL 5351#define MSM8998_SSCCX 6352#define MSM8998_SSCCX_VFL 7353#define MSM8998_SSCMX 8354#define MSM8998_SSCMX_VFL 9355 356/* QCS404 Power Domains */357#define QCS404_VDDMX 0358#define QCS404_VDDMX_AO 1359#define QCS404_VDDMX_VFL 2360#define QCS404_LPICX 3361#define QCS404_LPICX_VFL 4362#define QCS404_LPIMX 5363#define QCS404_LPIMX_VFL 6364 365/* SDM660 Power Domains */366#define SDM660_VDDCX 0367#define SDM660_VDDCX_AO 1368#define SDM660_VDDCX_VFL 2369#define SDM660_VDDMX 3370#define SDM660_VDDMX_AO 4371#define SDM660_VDDMX_VFL 5372#define SDM660_SSCCX 6373#define SDM660_SSCCX_VFL 7374#define SDM660_SSCMX 8375#define SDM660_SSCMX_VFL 9376 377/* SM6115 Power Domains */378#define SM6115_VDDCX 0379#define SM6115_VDDCX_AO 1380#define SM6115_VDDCX_VFL 2381#define SM6115_VDDMX 3382#define SM6115_VDDMX_AO 4383#define SM6115_VDDMX_VFL 5384#define SM6115_VDD_LPI_CX 6385#define SM6115_VDD_LPI_MX 7386 387/* SM6125 Power Domains */388#define SM6125_VDDCX 0389#define SM6125_VDDCX_AO 1390#define SM6125_VDDCX_VFL 2391#define SM6125_VDDMX 3392#define SM6125_VDDMX_AO 4393#define SM6125_VDDMX_VFL 5394 395/* QCM2290 Power Domains */396#define QCM2290_VDDCX 0397#define QCM2290_VDDCX_AO 1398#define QCM2290_VDDCX_VFL 2399#define QCM2290_VDDMX 3400#define QCM2290_VDDMX_AO 4401#define QCM2290_VDDMX_VFL 5402#define QCM2290_VDD_LPI_CX 6403#define QCM2290_VDD_LPI_MX 7404 405/* RPM SMD Power Domain performance levels */406#define RPM_SMD_LEVEL_RETENTION 16407#define RPM_SMD_LEVEL_RETENTION_PLUS 32408#define RPM_SMD_LEVEL_MIN_SVS 48409#define RPM_SMD_LEVEL_LOW_SVS 64410#define RPM_SMD_LEVEL_SVS 128411#define RPM_SMD_LEVEL_SVS_PLUS 192412#define RPM_SMD_LEVEL_NOM 256413#define RPM_SMD_LEVEL_NOM_PLUS 320414#define RPM_SMD_LEVEL_TURBO 384415#define RPM_SMD_LEVEL_TURBO_NO_CPR 416416#define RPM_SMD_LEVEL_TURBO_HIGH 448417#define RPM_SMD_LEVEL_BINNING 512418 419#endif420