Commit 94838f38 authored by Dmitry Baryshkov's avatar Dmitry Baryshkov Committed by Ulf Hansson
Browse files

dt-bindings: power: qcom-rpmpd: add generic bindings for RPM power domains



Some of the Qualcomm RPM PD controllers use a common set of indices for
power domains. Add generic indices for Qualcomm RPM power domain
controllers.

Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Acked-by: default avatarRob Herring (Arm) <robh@kernel.org>
Reviewed-by: default avatarBjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20250718-rework-rpmhpd-rpmpd-v1-3-eedca108e540@oss.qualcomm.com


Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent e6e1e3b6
Loading
Loading
Loading
Loading
+70 −51
Original line number Diff line number Diff line
@@ -6,18 +6,37 @@

#include <dt-bindings/power/qcom,rpmhpd.h>

/* Generic RPM Power Domain Indexes */
#define RPMPD_VDDCX		0
#define RPMPD_VDDCX_AO		1
/* VFC and VFL are mutually exclusive and can not be present on the same platform */
#define RPMPD_VDDCX_VFC		2
#define RPMPD_VDDCX_VFL		2
#define RPMPD_VDDMX		3
#define RPMPD_VDDMX_AO		4
#define RPMPD_VDDMX_VFL		5
#define RPMPD_SSCCX		6
#define RPMPD_SSCCX_VFL		7
#define RPMPD_SSCMX		8
#define RPMPD_SSCMX_VFL		9

/*
 * Platform-specific power domain bindings. Don't add new entries here, use
 * RPMPD_* above.
 */

/* MDM9607 Power Domains */
#define MDM9607_VDDCX		0
#define MDM9607_VDDCX_AO	1
#define MDM9607_VDDCX_VFL	2
#define MDM9607_VDDMX		3
#define MDM9607_VDDMX_AO	4
#define MDM9607_VDDMX_VFL	5
#define MDM9607_VDDCX		RPMPD_VDDCX
#define MDM9607_VDDCX_AO	RPMPD_VDDCX_AO
#define MDM9607_VDDCX_VFL	RPMPD_VDDCX_VFL
#define MDM9607_VDDMX		RPMPD_VDDMX
#define MDM9607_VDDMX_AO	RPMPD_VDDMX_AO
#define MDM9607_VDDMX_VFL	RPMPD_VDDMX_VFL

/* MSM8226 Power Domain Indexes */
#define MSM8226_VDDCX		0
#define MSM8226_VDDCX_AO	1
#define MSM8226_VDDCX_VFC	2
#define MSM8226_VDDCX		RPMPD_VDDCX
#define MSM8226_VDDCX_AO	RPMPD_VDDCX_AO
#define MSM8226_VDDCX_VFC	RPMPD_VDDCX_VFC

/* MSM8939 Power Domains */
#define MSM8939_VDDMDCX		0
@@ -30,11 +49,11 @@
#define MSM8939_VDDMX_AO	7

/* MSM8916 Power Domain Indexes */
#define MSM8916_VDDCX		0
#define MSM8916_VDDCX_AO	1
#define MSM8916_VDDCX_VFC	2
#define MSM8916_VDDMX		3
#define MSM8916_VDDMX_AO	4
#define MSM8916_VDDCX		RPMPD_VDDCX
#define MSM8916_VDDCX_AO	RPMPD_VDDCX_AO
#define MSM8916_VDDCX_VFC	RPMPD_VDDCX_VFC
#define MSM8916_VDDMX		RPMPD_VDDMX
#define MSM8916_VDDMX_AO	RPMPD_VDDMX_AO

/* MSM8909 Power Domain Indexes */
#define MSM8909_VDDCX		MSM8916_VDDCX
@@ -44,11 +63,11 @@
#define MSM8909_VDDMX_AO	MSM8916_VDDMX_AO

/* MSM8917 Power Domain Indexes */
#define MSM8917_VDDCX		0
#define MSM8917_VDDCX_AO	1
#define MSM8917_VDDCX_VFL	2
#define MSM8917_VDDMX		3
#define MSM8917_VDDMX_AO	4
#define MSM8917_VDDCX		RPMPD_VDDCX
#define MSM8917_VDDCX_AO	RPMPD_VDDCX_AO
#define MSM8917_VDDCX_VFL	RPMPD_VDDCX_VFL
#define MSM8917_VDDMX		RPMPD_VDDMX
#define MSM8917_VDDMX_AO	RPMPD_VDDMX_AO

/* MSM8937 Power Domain Indexes */
#define MSM8937_VDDCX		MSM8917_VDDCX
@@ -81,12 +100,12 @@
#define MSM8974_VDDGFX_VFC	4

/* MSM8976 Power Domain Indexes */
#define MSM8976_VDDCX		0
#define MSM8976_VDDCX_AO	1
#define MSM8976_VDDCX_VFL	2
#define MSM8976_VDDMX		3
#define MSM8976_VDDMX_AO	4
#define MSM8976_VDDMX_VFL	5
#define MSM8976_VDDCX		RPMPD_VDDCX
#define MSM8976_VDDCX_AO	RPMPD_VDDCX_AO
#define MSM8976_VDDCX_VFL	RPMPD_VDDCX_VFL
#define MSM8976_VDDMX		RPMPD_VDDMX
#define MSM8976_VDDMX_AO	RPMPD_VDDMX_AO
#define MSM8976_VDDMX_VFL	RPMPD_VDDMX_VFL

/* MSM8994 Power Domain Indexes */
#define MSM8994_VDDCX		0
@@ -107,16 +126,16 @@
#define MSM8996_VDDSSCX_VFC	6

/* MSM8998 Power Domain Indexes */
#define MSM8998_VDDCX		0
#define MSM8998_VDDCX_AO	1
#define MSM8998_VDDCX_VFL	2
#define MSM8998_VDDMX		3
#define MSM8998_VDDMX_AO	4
#define MSM8998_VDDMX_VFL	5
#define MSM8998_SSCCX		6
#define MSM8998_SSCCX_VFL	7
#define MSM8998_SSCMX		8
#define MSM8998_SSCMX_VFL	9
#define MSM8998_VDDCX		RPMPD_VDDCX
#define MSM8998_VDDCX_AO	RPMPD_VDDCX_AO
#define MSM8998_VDDCX_VFL	RPMPD_VDDCX_VFL
#define MSM8998_VDDMX		RPMPD_VDDMX
#define MSM8998_VDDMX_AO	RPMPD_VDDMX_AO
#define MSM8998_VDDMX_VFL	RPMPD_VDDMX_VFL
#define MSM8998_SSCCX		RPMPD_SSCCX
#define MSM8998_SSCCX_VFL	RPMPD_SSCCX_VFL
#define MSM8998_SSCMX		RPMPD_SSCMX
#define MSM8998_SSCMX_VFL	RPMPD_SSCMX_VFL

/* QCM2290 Power Domains */
#define QCM2290_VDDCX		0
@@ -138,16 +157,16 @@
#define QCS404_LPIMX_VFL	6

/* SDM660 Power Domains */
#define SDM660_VDDCX		0
#define SDM660_VDDCX_AO		1
#define SDM660_VDDCX_VFL	2
#define SDM660_VDDMX		3
#define SDM660_VDDMX_AO		4
#define SDM660_VDDMX_VFL	5
#define SDM660_SSCCX		6
#define SDM660_SSCCX_VFL	7
#define SDM660_SSCMX		8
#define SDM660_SSCMX_VFL	9
#define SDM660_VDDCX		RPMPD_VDDCX
#define SDM660_VDDCX_AO		RPMPD_VDDCX_AO
#define SDM660_VDDCX_VFL	RPMPD_VDDCX_VFL
#define SDM660_VDDMX		RPMPD_VDDMX
#define SDM660_VDDMX_AO		RPMPD_VDDMX_AO
#define SDM660_VDDMX_VFL	RPMPD_VDDMX_VFL
#define SDM660_SSCCX		RPMPD_SSCCX
#define SDM660_SSCCX_VFL	RPMPD_SSCCX_VFL
#define SDM660_SSCMX		RPMPD_SSCMX
#define SDM660_SSCMX_VFL	RPMPD_SSCMX_VFL

/* SM6115 Power Domains */
#define SM6115_VDDCX		0
@@ -160,12 +179,12 @@
#define SM6115_VDD_LPI_MX	7

/* SM6125 Power Domains */
#define SM6125_VDDCX		0
#define SM6125_VDDCX_AO		1
#define SM6125_VDDCX_VFL	2
#define SM6125_VDDMX		3
#define SM6125_VDDMX_AO		4
#define SM6125_VDDMX_VFL	5
#define SM6125_VDDCX		RPMPD_VDDCX
#define SM6125_VDDCX_AO		RPMPD_VDDCX_AO
#define SM6125_VDDCX_VFL	RPMPD_VDDCX_VFL
#define SM6125_VDDMX		RPMPD_VDDMX
#define SM6125_VDDMX_AO		RPMPD_VDDMX_AO
#define SM6125_VDDMX_VFL	RPMPD_VDDMX_VFL

/* SM6375 Power Domain Indexes */
#define SM6375_VDDCX		0