Skip to contentSkip to conversation

dt-bindings: power: Add rpmh power-domain bindings for SM8150

PATCH In review Sibi Sankar 5 participants 31 messages Nov 18, 2019 – Dec 13, 2019 14 messages not in the archive

Subsystems (3)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

PATCH 1/6 soc: qcom: rpmhpd: Set 'active_only' for active only power domains

From: Douglas Anderson <[email protected]>

The 'active_only' attribute was accidentally never set to true for any power domains meaning that all the code handling this attribute was dead.

NOTE that the RPM power domain code (as opposed to the RPMh one) gets this right.

Fixes 279b7e8a62cc ("soc: qcom: rpmhpd: Add RPMh power domain driver")
---
 drivers/soc/qcom/rpmhpd.c | 2 ++
 1 file changed, 2 insertions(+)
drivers/soc/qcom/rpmhpd.c +2 -0
index 5741ec3fa814c..51850cc68b701 100644
@@ -93,6 +93,7 @@ static struct rpmhpd sdm845_mx = {
 
 static struct rpmhpd sdm845_mx_ao = {
 	.pd = { .name = "mx_ao", },
+	.active_only = true,
 	.peer = &sdm845_mx,
 	.res_name = "mx.lvl",
 };
@@ -107,6 +108,7 @@ static struct rpmhpd sdm845_cx = {
 
 static struct rpmhpd sdm845_cx_ao = {
 	.pd = { .name = "cx_ao", },
+	.active_only = true,
 	.peer = &sdm845_cx,
 	.parent = &sdm845_mx_ao.pd,
 	.res_name = "cx.lvl",
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#2 lore raw

Re: [PATCH 1/6] soc: qcom: rpmhpd: Set 'active_only' for active only power domains

Quoted 6 lines · Sibi Sankar

From: Douglas Anderson <[email protected]>

The 'active_only' attribute was accidentally never set to true for any power domains meaning that all the code handling this attribute was dead.

Quoted 7 lines

NOTE that the RPM power domain code (as opposed to the RPMh one) gets this right.

Fixes 279b7e8a62cc ("soc: qcom: rpmhpd: Add RPMh power domain driver")

You should have added your S-o-b here to certify its origin. But I picked up this patch earlier today.

Thanks,
Bjorn

Quoted 28 lines
---
 drivers/soc/qcom/rpmhpd.c | 2 ++
 1 file changed, 2 insertions(+)
drivers/soc/qcom/rpmhpd.c +2 -0
index 5741ec3fa814c..51850cc68b701 100644
@@ -93,6 +93,7 @@ static struct rpmhpd sdm845_mx = {
 
 static struct rpmhpd sdm845_mx_ao = {
 	.pd = { .name = "mx_ao", },
+	.active_only = true,
 	.peer = &sdm845_mx,
 	.res_name = "mx.lvl",
 };
@@ -107,6 +108,7 @@ static struct rpmhpd sdm845_cx = {
 
 static struct rpmhpd sdm845_cx_ao = {
 	.pd = { .name = "cx_ao", },
+	.active_only = true,
 	.peer = &sdm845_cx,
 	.parent = &sdm845_mx_ao.pd,
 	.res_name = "cx.lvl",
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#3 lore raw

Re: [PATCH 1/6] soc: qcom: rpmhpd: Set 'active_only' for active only power domains

Quoted 11 lines · Bjorn Andersson
Quoted 9 lines · Sibi Sankar

From: Douglas Anderson <[email protected]>

The 'active_only' attribute was accidentally never set to true for any power domains meaning that all the code handling this attribute was dead.

NOTE that the RPM power domain code (as opposed to the RPMh one) gets this right.

Quoted 7 lines
Quoted 4 lines
Fixes 279b7e8a62cc ("soc: qcom: rpmhpd: Add RPMh power domain driver")

You should have added your S-o-b here to certify its origin. But I picked up this patch earlier today.

sry missed it

Quoted 32 lines

Thanks,
Bjorn

Quoted 28 lines
---
 drivers/soc/qcom/rpmhpd.c | 2 ++
 1 file changed, 2 insertions(+)
drivers/soc/qcom/rpmhpd.c +2 -1
index 5741ec3fa814c..51850cc68b701 100644
@@ -93,6 +93,7 @@ static struct rpmhpd sdm845_mx = {
 
 static struct rpmhpd sdm845_mx_ao = {
 	.pd = { .name = "mx_ao", },
+	.active_only = true,
 	.peer = &sdm845_mx,
 	.res_name = "mx.lvl",
 };
@@ -107,6 +108,7 @@ static struct rpmhpd sdm845_cx = {
 
 static struct rpmhpd sdm845_cx_ao = {
 	.pd = { .name = "cx_ao", },
+	.active_only = true,
 	.peer = &sdm845_cx,
 	.parent = &sdm845_mx_ao.pd,
 	.res_name = "cx.lvl",
--

The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.
#4 lore raw

PATCH 2/6 dt-bindings: power: Add rpmh power-domain bindings for SM8150

In reply to a message not in the archive

Add RPMH power-domain bindings for the SM8150 family of SoCs.

---
 .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
 include/dt-bindings/power/qcom-rpmpd.h             | 14 ++++++++++++++
 2 files changed, 15 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
 	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
 	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
 	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
+	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
  - #power-domain-cells: number of cells in Power domain specifier
 	must be 1.
  - operating-points-v2: Phandle to the OPP table for the Power domain.
include/dt-bindings/power/qcom-rpmpd.h +14 -0
index f05f8b1808ec9..7d43bafc0026b 100644
@@ -15,12 +15,26 @@
 #define SDM845_GFX	7
 #define SDM845_MSS	8
 
+/* SM8150 Power Domain Indexes */
+#define SM8150_MSS	0
+#define SM8150_EBI	1
+#define SM8150_LMX	2
+#define SM8150_LCX	3
+#define SM8150_GFX	4
+#define SM8150_MX	5
+#define SM8150_MX_AO	6
+#define SM8150_CX	7
+#define SM8150_CX_AO	8
+#define SM8150_MMCX	9
+#define SM8150_MMCX_AO	10
+
 /* SDM845 Power Domain performance levels */
 #define RPMH_REGULATOR_LEVEL_RETENTION	16
 #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
 #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
 #define RPMH_REGULATOR_LEVEL_SVS	128
 #define RPMH_REGULATOR_LEVEL_SVS_L1	192
+#define RPMH_REGULATOR_LEVEL_SVS_L2	224
 #define RPMH_REGULATOR_LEVEL_NOM	256
 #define RPMH_REGULATOR_LEVEL_NOM_L1	320
 #define RPMH_REGULATOR_LEVEL_NOM_L2	336
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Reviewed-by on v1 2/6
#5 lore raw
Quoted 32 lines · Sibi Sankar

Add RPMH power-domain bindings for the SM8150 family of SoCs.

---
  .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
  include/dt-bindings/power/qcom-rpmpd.h             | 14 ++++++++++++++
  2 files changed, 15 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
  	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
  	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
  	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
+	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
   - #power-domain-cells: number of cells in Power domain specifier
  	must be 1.
   - operating-points-v2: Phandle to the OPP table for the Power domain.
include/dt-bindings/power/qcom-rpmpd.h +4 -0
index f05f8b1808ec9..7d43bafc0026b 100644
@@ -15,12 +15,26 @@
  #define SDM845_GFX	7
  #define SDM845_MSS	8
 
+/* SM8150 Power Domain Indexes */
+#define SM8150_MSS	0
+#define SM8150_EBI	1
+#define SM8150_LMX	2

include/dt-bindings/power/qcom-rpmpd.h line 31

Quoted 10 lines
include/dt-bindings/power/qcom-rpmpd.h +9 -0
+#define SM8150_LCX	3
+#define SM8150_GFX	4
+#define SM8150_MX	5
+#define SM8150_MX_AO	6
+#define SM8150_CX	7
+#define SM8150_CX_AO	8
+#define SM8150_MMCX	9
+#define SM8150_MMCX_AO	10
+
  /* SDM845 Power Domain performance levels */

You could perhaps remove this comment, or remove the SDM845 from it.

Quoted 10 lines
include/dt-bindings/power/qcom-rpmpd.h +1 -0
  #define RPMH_REGULATOR_LEVEL_RETENTION	16
  #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
  #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
  #define RPMH_REGULATOR_LEVEL_SVS	128
  #define RPMH_REGULATOR_LEVEL_SVS_L1	192
+#define RPMH_REGULATOR_LEVEL_SVS_L2	224
  #define RPMH_REGULATOR_LEVEL_NOM	256
  #define RPMH_REGULATOR_LEVEL_NOM_L1	320
  #define RPMH_REGULATOR_LEVEL_NOM_L2	336
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation

A message that is not in the archive (sent off-list or not yet received): [email protected]

#7 lore raw
Quoted 41 lines · Rajendra Nayak
Quoted 40 lines · Sibi Sankar

Add RPMH power-domain bindings for the SM8150 family of SoCs.

---
  .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
  include/dt-bindings/power/qcom-rpmpd.h             | 14 
++++++++++++++
  2 files changed, 15 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +0 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
  	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of 

SoC
* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of
SoC

Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
+	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
   - #power-domain-cells: number of cells in Power domain specifier
  	must be 1.
   - operating-points-v2: Phandle to the OPP table for the Power 

domain.

include/dt-bindings/power/qcom-rpmpd.h +8 -0
index f05f8b1808ec9..7d43bafc0026b 100644
@@ -15,12 +15,26 @@
  #define SDM845_GFX	7
  #define SDM845_MSS	8
  +/* SM8150 Power Domain Indexes */
+#define SM8150_MSS	0
+#define SM8150_EBI	1
+#define SM8150_LMX	2
+#define SM8150_LCX	3
+#define SM8150_GFX	4
+#define SM8150_MX	5
+#define SM8150_MX_AO	6
+#define SM8150_CX	7
Quoted 8 lines

include/dt-bindings/power/qcom-rpmpd.h line 31

Quoted 5 lines
include/dt-bindings/power/qcom-rpmpd.h +4 -0
+#define SM8150_CX_AO	8
+#define SM8150_MMCX	9
+#define SM8150_MMCX_AO	10
+
  /* SDM845 Power Domain performance levels */

You could perhaps remove this comment, or remove the SDM845 from it.

yes will remove it

Quoted 13 lines
Quoted 10 lines
include/dt-bindings/power/qcom-rpmpd.h +1 -0
  #define RPMH_REGULATOR_LEVEL_RETENTION	16
  #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
  #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
  #define RPMH_REGULATOR_LEVEL_SVS	128
  #define RPMH_REGULATOR_LEVEL_SVS_L1	192
+#define RPMH_REGULATOR_LEVEL_SVS_L2	224
  #define RPMH_REGULATOR_LEVEL_NOM	256
  #define RPMH_REGULATOR_LEVEL_NOM_L1	320
  #define RPMH_REGULATOR_LEVEL_NOM_L2	336
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.
#9 lore raw

PATCH 3/6 soc: qcom: rpmhpd: Add SM8150 RPMH power-domains

In reply to a message not in the archive

Add support for cx/mx/gfx/mss/ebi/mmcx power-domains found on SM8150 SoCs.

---
 drivers/soc/qcom/rpmhpd.c | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
drivers/soc/qcom/rpmhpd.c +36 -0
index 51850cc68b701..3b109ee67a4d2 100644
@@ -131,8 +131,44 @@ static const struct rpmhpd_desc sdm845_desc = {
 	.num_pds = ARRAY_SIZE(sdm845_rpmhpds),
 };
 
+/* SM8150 RPMH powerdomains */
+
+static struct rpmhpd sm8150_mmcx_ao;
+static struct rpmhpd sm8150_mmcx = {
+	.pd = { .name = "mmcx", },
+	.peer = &sm8150_mmcx_ao,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd sm8150_mmcx_ao = {
+	.pd = { .name = "mmcx_ao", },
+	.active_only = true,
+	.peer = &sm8150_mmcx,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd *sm8150_rpmhpds[] = {
+	[SM8150_MSS] = &sdm845_mss,
+	[SM8150_EBI] = &sdm845_ebi,
+	[SM8150_LMX] = &sdm845_lmx,
+	[SM8150_LCX] = &sdm845_lcx,
+	[SM8150_GFX] = &sdm845_gfx,
+	[SM8150_MX] = &sdm845_mx,
+	[SM8150_MX_AO] = &sdm845_mx_ao,
+	[SM8150_CX] = &sdm845_cx,
+	[SM8150_CX_AO] = &sdm845_cx_ao,
+	[SM8150_MMCX] = &sm8150_mmcx,
+	[SM8150_MMCX_AO] = &sm8150_mmcx_ao,
+};
+
+static const struct rpmhpd_desc sm8150_desc = {
+	.rpmhpds = sm8150_rpmhpds,
+	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
+};
+
 static const struct of_device_id rpmhpd_match_table[] = {
 	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
+	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
 	{ }
 };
 
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Reviewed-by on v1 3/6
#10 lore raw

Re: [PATCH 3/6] soc: qcom: rpmhpd: Add SM8150 RPMH power-domains

Quoted 3 lines · Sibi Sankar

Add support for cx/mx/gfx/mss/ebi/mmcx power-domains found on SM8150 SoCs.

Quoted 58 lines
---
 drivers/soc/qcom/rpmhpd.c | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
drivers/soc/qcom/rpmhpd.c +36 -0
index 51850cc68b701..3b109ee67a4d2 100644
@@ -131,8 +131,44 @@ static const struct rpmhpd_desc sdm845_desc = {
 	.num_pds = ARRAY_SIZE(sdm845_rpmhpds),
 };
 
+/* SM8150 RPMH powerdomains */
+
+static struct rpmhpd sm8150_mmcx_ao;
+static struct rpmhpd sm8150_mmcx = {
+	.pd = { .name = "mmcx", },
+	.peer = &sm8150_mmcx_ao,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd sm8150_mmcx_ao = {
+	.pd = { .name = "mmcx_ao", },
+	.active_only = true,
+	.peer = &sm8150_mmcx,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd *sm8150_rpmhpds[] = {
+	[SM8150_MSS] = &sdm845_mss,
+	[SM8150_EBI] = &sdm845_ebi,
+	[SM8150_LMX] = &sdm845_lmx,
+	[SM8150_LCX] = &sdm845_lcx,
+	[SM8150_GFX] = &sdm845_gfx,
+	[SM8150_MX] = &sdm845_mx,
+	[SM8150_MX_AO] = &sdm845_mx_ao,
+	[SM8150_CX] = &sdm845_cx,
+	[SM8150_CX_AO] = &sdm845_cx_ao,
+	[SM8150_MMCX] = &sm8150_mmcx,
+	[SM8150_MMCX_AO] = &sm8150_mmcx_ao,
+};
+
+static const struct rpmhpd_desc sm8150_desc = {
+	.rpmhpds = sm8150_rpmhpds,
+	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
+};
+
 static const struct of_device_id rpmhpd_match_table[] = {
 	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
+	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
 	{ }
 };
 
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Reviewed-by on v1 3/6
#11 lore raw

Re: [PATCH 3/6] soc: qcom: rpmhpd: Add SM8150 RPMH power-domains

In reply to Sibi Sankar
Quoted 2 lines · Sibi Sankar

Add support for cx/mx/gfx/mss/ebi/mmcx power-domains found on SM8150 SoCs.

lmx/lcx also?

Quoted 3 lines

---

Quoted 53 lines
  drivers/soc/qcom/rpmhpd.c | 36 ++++++++++++++++++++++++++++++++++++
  1 file changed, 36 insertions(+)
drivers/soc/qcom/rpmhpd.c +36 -0
index 51850cc68b701..3b109ee67a4d2 100644
@@ -131,8 +131,44 @@ static const struct rpmhpd_desc sdm845_desc = {
  	.num_pds = ARRAY_SIZE(sdm845_rpmhpds),
  };
 
+/* SM8150 RPMH powerdomains */
+
+static struct rpmhpd sm8150_mmcx_ao;
+static struct rpmhpd sm8150_mmcx = {
+	.pd = { .name = "mmcx", },
+	.peer = &sm8150_mmcx_ao,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd sm8150_mmcx_ao = {
+	.pd = { .name = "mmcx_ao", },
+	.active_only = true,
+	.peer = &sm8150_mmcx,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd *sm8150_rpmhpds[] = {
+	[SM8150_MSS] = &sdm845_mss,
+	[SM8150_EBI] = &sdm845_ebi,
+	[SM8150_LMX] = &sdm845_lmx,
+	[SM8150_LCX] = &sdm845_lcx,
+	[SM8150_GFX] = &sdm845_gfx,
+	[SM8150_MX] = &sdm845_mx,
+	[SM8150_MX_AO] = &sdm845_mx_ao,
+	[SM8150_CX] = &sdm845_cx,
+	[SM8150_CX_AO] = &sdm845_cx_ao,
+	[SM8150_MMCX] = &sm8150_mmcx,
+	[SM8150_MMCX_AO] = &sm8150_mmcx_ao,
+};
+
+static const struct rpmhpd_desc sm8150_desc = {
+	.rpmhpds = sm8150_rpmhpds,
+	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
+};
+
  static const struct of_device_id rpmhpd_match_table[] = {
  	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
+	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
  	{ }
  };
 
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation

A message that is not in the archive (sent off-list or not yet received): [email protected]

#13 lore raw

Re: [PATCH 3/6] soc: qcom: rpmhpd: Add SM8150 RPMH power-domains

Quoted 5 lines · Rajendra Nayak
Quoted 2 lines · Sibi Sankar

Add support for cx/mx/gfx/mss/ebi/mmcx power-domains found on SM8150 SoCs.

lmx/lcx also?

yes will fix it

Quoted 58 lines
Quoted 4 lines

---

Quoted 51 lines
  drivers/soc/qcom/rpmhpd.c | 36 ++++++++++++++++++++++++++++++++++++
  1 file changed, 36 insertions(+)
drivers/soc/qcom/rpmhpd.c +35 -0
index 51850cc68b701..3b109ee67a4d2 100644
@@ -131,8 +131,44 @@ static const struct rpmhpd_desc sdm845_desc = {
  	.num_pds = ARRAY_SIZE(sdm845_rpmhpds),
  };
  +/* SM8150 RPMH powerdomains */
+
+static struct rpmhpd sm8150_mmcx_ao;
+static struct rpmhpd sm8150_mmcx = {
+	.pd = { .name = "mmcx", },
+	.peer = &sm8150_mmcx_ao,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd sm8150_mmcx_ao = {
+	.pd = { .name = "mmcx_ao", },
+	.active_only = true,
+	.peer = &sm8150_mmcx,
+	.res_name = "mmcx.lvl",
+};
+
+static struct rpmhpd *sm8150_rpmhpds[] = {
+	[SM8150_MSS] = &sdm845_mss,
+	[SM8150_EBI] = &sdm845_ebi,
+	[SM8150_LMX] = &sdm845_lmx,
+	[SM8150_LCX] = &sdm845_lcx,
+	[SM8150_GFX] = &sdm845_gfx,
+	[SM8150_MX] = &sdm845_mx,
+	[SM8150_MX_AO] = &sdm845_mx_ao,
+	[SM8150_CX] = &sdm845_cx,
+	[SM8150_CX_AO] = &sdm845_cx_ao,
+	[SM8150_MMCX] = &sm8150_mmcx,
+	[SM8150_MMCX_AO] = &sm8150_mmcx_ao,
+};
+
+static const struct rpmhpd_desc sm8150_desc = {
+	.rpmhpds = sm8150_rpmhpds,
+	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
+};
+
  static const struct of_device_id rpmhpd_match_table[] = {
  	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
+	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
  	{ }
  };
 
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.
#14 lore raw

PATCH 4/6 dt-bindings: power: Add rpmh power-domain bindings for sc7180

In reply to a message not in the archive

Add RPMH power-domain bindings for the SC7180 family of SoCs.

---
 Documentation/devicetree/bindings/power/qcom,rpmpd.txt |  1 +
 include/dt-bindings/power/qcom-rpmpd.h                 | 10 ++++++++++
 2 files changed, 11 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index f3bbaa4aef297..6346d00b1b400 100644
@@ -9,6 +9,7 @@ Required Properties:
 	* qcom,msm8996-rpmpd: RPM Power domain for the msm8996 family of SoC
 	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
 	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
+	* qcom,sc7180-rpmhpd: RPMh Power domain for the sc7180 family of SoC
 	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
 	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
  - #power-domain-cells: number of cells in Power domain specifier
include/dt-bindings/power/qcom-rpmpd.h +10 -0
index 7d43bafc0026b..3f74096d5a7ca 100644
@@ -28,6 +28,16 @@
 #define SM8150_MMCX	9
 #define SM8150_MMCX_AO	10
 
+/* SC7180 Power Domain Indexes */
+#define SC7180_CX	0
+#define SC7180_CX_AO	1
+#define SC7180_GFX	2
+#define SC7180_MX	3
+#define SC7180_MX_AO	4
+#define SC7180_LMX	5
+#define SC7180_LCX	6
+#define SC7180_MSS	7
+
 /* SDM845 Power Domain performance levels */
 #define RPMH_REGULATOR_LEVEL_RETENTION	16
 #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Reviewed-by on v1 4/6
#15 lore raw

Re: [PATCH 4/6] dt-bindings: power: Add rpmh power-domain bindings for sc7180

Quoted 2 lines · Sibi Sankar

Add RPMH power-domain bindings for the SC7180 family of SoCs.

Quoted 43 lines
---
 Documentation/devicetree/bindings/power/qcom,rpmpd.txt |  1 +
 include/dt-bindings/power/qcom-rpmpd.h                 | 10 ++++++++++
 2 files changed, 11 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index f3bbaa4aef297..6346d00b1b400 100644
@@ -9,6 +9,7 @@ Required Properties:
 	* qcom,msm8996-rpmpd: RPM Power domain for the msm8996 family of SoC
 	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
 	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
+	* qcom,sc7180-rpmhpd: RPMh Power domain for the sc7180 family of SoC
 	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
 	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
  - #power-domain-cells: number of cells in Power domain specifier
include/dt-bindings/power/qcom-rpmpd.h +10 -0
index 7d43bafc0026b..3f74096d5a7ca 100644
@@ -28,6 +28,16 @@
 #define SM8150_MMCX	9
 #define SM8150_MMCX_AO	10
 
+/* SC7180 Power Domain Indexes */
+#define SC7180_CX	0
+#define SC7180_CX_AO	1
+#define SC7180_GFX	2
+#define SC7180_MX	3
+#define SC7180_MX_AO	4
+#define SC7180_LMX	5
+#define SC7180_LCX	6
+#define SC7180_MSS	7
+
 /* SDM845 Power Domain performance levels */
 #define RPMH_REGULATOR_LEVEL_RETENTION	16
 #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
maintainer Reviewed-by on v1 4/6
#16 lore raw

Re: [PATCH 4/6] dt-bindings: power: Add rpmh power-domain bindings for sc7180

In reply to Sibi Sankar
Quoted 8 lines · Sibi Sankar

Add RPMH power-domain bindings for the SC7180 family of SoCs.

---
 Documentation/devicetree/bindings/power/qcom,rpmpd.txt |  1 +
 include/dt-bindings/power/qcom-rpmpd.h                 | 10 ++++++++++
 2 files changed, 11 insertions(+)
#17 lore raw

PATCH 5/6 soc: qcom: rpmhpd: Add SC7180 RPMH power-domains

In reply to a message not in the archive

Add support for cx/mx/gfx/lcx/lmx/mss power-domains found on SC7180 SoCs.

---
 drivers/soc/qcom/rpmhpd.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
drivers/soc/qcom/rpmhpd.c +19 -0
index 3b109ee67a4d2..599208722650d 100644
@@ -166,7 +166,26 @@ static const struct rpmhpd_desc sm8150_desc = {
 	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
 };
 
+/* SC7180 RPMH powerdomains */
+
+static struct rpmhpd *sc7180_rpmhpds[] = {
+	[SC7180_CX] = &sdm845_cx,
+	[SC7180_CX_AO] = &sdm845_cx_ao,
+	[SC7180_GFX] = &sdm845_gfx,
+	[SC7180_MX] = &sdm845_mx,
+	[SC7180_MX_AO] = &sdm845_mx_ao,
+	[SC7180_LMX] = &sdm845_lmx,
+	[SC7180_LCX] = &sdm845_lcx,
+	[SC7180_MSS] = &sdm845_mss,
+};
+
+static const struct rpmhpd_desc sc7180_desc = {
+	.rpmhpds = sc7180_rpmhpds,
+	.num_pds = ARRAY_SIZE(sc7180_rpmhpds),
+};
+
 static const struct of_device_id rpmhpd_match_table[] = {
+	{ .compatible = "qcom,sc7180-rpmhpd", .data = &sc7180_desc },
 	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
 	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
 	{ }
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#18 lore raw

PATCH 6/6 arm64: dts: sm8150: Add rpmh power-domain node

In reply to a message not in the archive

Add the DT node for the rpmhpd power controller.

---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 55 ++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
arch/arm64/boot/dts/qcom/sm8150.dtsi +55 -0
index 8f23fcadecb89..0ac257637c2af 100644
@@ -5,6 +5,7 @@
  */
 
 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 #include <dt-bindings/clock/qcom,rpmh.h>
 
@@ -469,6 +470,60 @@
 				clock-names = "xo";
 				clocks = <&xo_board>;
 			};
+
+			rpmhpd: power-controller {
+				compatible = "qcom,sm8150-rpmhpd";
+				#power-domain-cells = <1>;
+				operating-points-v2 = <&rpmhpd_opp_table>;
+
+				rpmhpd_opp_table: opp-table {
+					compatible = "operating-points-v2";
+
+					rpmhpd_opp_ret: opp1 {
+						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
+					};
+
+					rpmhpd_opp_min_svs: opp2 {
+						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
+					};
+
+					rpmhpd_opp_low_svs: opp3 {
+						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+					};
+
+					rpmhpd_opp_svs: opp4 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+					};
+
+					rpmhpd_opp_svs_l1: opp5 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+					};
+
+					rpmhpd_opp_svs_l2: opp6 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
+					};
+
+					rpmhpd_opp_nom: opp7 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+					};
+
+					rpmhpd_opp_nom_l1: opp8 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+					};
+
+					rpmhpd_opp_nom_l2: opp9 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
+					};
+
+					rpmhpd_opp_turbo: opp10 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+					};
+
+					rpmhpd_opp_turbo_l1: opp11 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+					};
+				};
+			};
 		};
 	};
 
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#19 lore raw

Re: [PATCH 6/6] arm64: dts: sm8150: Add rpmh power-domain node

Quoted 3 lines · Sibi Sankar

Add the DT node for the rpmhpd power controller.

Series applied, please send separate patch for the yaml migration.

Regards,
Bjorn

Quoted 81 lines
---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 55 ++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
arch/arm64/boot/dts/qcom/sm8150.dtsi +55 -0
index 8f23fcadecb89..0ac257637c2af 100644
@@ -5,6 +5,7 @@
  */
 
 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 #include <dt-bindings/clock/qcom,rpmh.h>
 
@@ -469,6 +470,60 @@
 				clock-names = "xo";
 				clocks = <&xo_board>;
 			};
+
+			rpmhpd: power-controller {
+				compatible = "qcom,sm8150-rpmhpd";
+				#power-domain-cells = <1>;
+				operating-points-v2 = <&rpmhpd_opp_table>;
+
+				rpmhpd_opp_table: opp-table {
+					compatible = "operating-points-v2";
+
+					rpmhpd_opp_ret: opp1 {
+						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
+					};
+
+					rpmhpd_opp_min_svs: opp2 {
+						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
+					};
+
+					rpmhpd_opp_low_svs: opp3 {
+						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+					};
+
+					rpmhpd_opp_svs: opp4 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+					};
+
+					rpmhpd_opp_svs_l1: opp5 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+					};
+
+					rpmhpd_opp_svs_l2: opp6 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
+					};
+
+					rpmhpd_opp_nom: opp7 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+					};
+
+					rpmhpd_opp_nom_l1: opp8 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+					};
+
+					rpmhpd_opp_nom_l2: opp9 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
+					};
+
+					rpmhpd_opp_turbo: opp10 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+					};
+
+					rpmhpd_opp_turbo_l1: opp11 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+					};
+				};
+			};
 		};
 	};
 
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
#20 lore raw

Re: [PATCH 6/6] arm64: dts: sm8150: Add rpmh power-domain node

Quoted 7 lines · Bjorn Andersson
Quoted 3 lines · Sibi Sankar

Add the DT node for the rpmhpd power controller.

Series applied, please send separate patch for the yaml migration.

Thanks Bjorn, will send it out
asap

Quoted 86 lines

Regards,
Bjorn

Quoted 82 lines
---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 55 
++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
arch/arm64/boot/dts/qcom/sm8150.dtsi +55 -1
index 8f23fcadecb89..0ac257637c2af 100644
@@ -5,6 +5,7 @@
  */
 
 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 #include <dt-bindings/clock/qcom,rpmh.h>
 
@@ -469,6 +470,60 @@
 				clock-names = "xo";
 				clocks = <&xo_board>;
 			};
+
+			rpmhpd: power-controller {
+				compatible = "qcom,sm8150-rpmhpd";
+				#power-domain-cells = <1>;
+				operating-points-v2 = <&rpmhpd_opp_table>;
+
+				rpmhpd_opp_table: opp-table {
+					compatible = "operating-points-v2";
+
+					rpmhpd_opp_ret: opp1 {
+						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
+					};
+
+					rpmhpd_opp_min_svs: opp2 {
+						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
+					};
+
+					rpmhpd_opp_low_svs: opp3 {
+						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+					};
+
+					rpmhpd_opp_svs: opp4 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+					};
+
+					rpmhpd_opp_svs_l1: opp5 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+					};
+
+					rpmhpd_opp_svs_l2: opp6 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
+					};
+
+					rpmhpd_opp_nom: opp7 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+					};
+
+					rpmhpd_opp_nom_l1: opp8 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+					};
+
+					rpmhpd_opp_nom_l2: opp9 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
+					};
+
+					rpmhpd_opp_turbo: opp10 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+					};
+
+					rpmhpd_opp_turbo_l1: opp11 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+					};
+				};
+			};
 		};
 	};
 
--

The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99aa17-22b1062e-9922-40e4-ae7e-8b91210bb12c-000000@us-west-2.amazonses.com

Reviewed-by
#22 lore raw

Quoting Sibi Sankar (2019-11-18 09:40:07)

Quoted 4 lines

Add RPMH power-domain bindings for the SM8150 family of SoCs.

---

Documentation/devicetree/bindings/power/qcom,rpmpd.txt Required Properties: · line 13

Quoted 13 lines
 .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
 include/dt-bindings/power/qcom-rpmpd.h             | 14 ++++++++++++++
 2 files changed, 15 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
        * qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
        * qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
        * qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
+       * qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC

Can you convert this binding to YAML? Would help us validate DTS files in the future.

Quoted 3 lines
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +0 -0
  - #power-domain-cells: number of cells in Power domain specifier
        must be 1.
  - operating-points-v2: Phandle to the OPP table for the Power domain.
#23 lore raw
Quoted 13 lines · Stephen Boyd

Quoting Sibi Sankar (2019-11-18 09:40:07)

Quoted 4 lines

Add RPMH power-domain bindings for the SM8150 family of SoCs.

---

Quoted 5 lines
 .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
 include/dt-bindings/power/qcom-rpmpd.h             | 14 
++++++++++++++
 2 files changed, 15 insertions(+)
Quoted 16 lines
Quoted 6 lines
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +0 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
        * qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family 
Quoted 7 lines

of SoC
* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of
SoC
* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family
of SoC
+ * qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family
of SoC

Can you convert this binding to YAML? Would help us validate DTS files in the future.

yes will convert it in the next
re-spin.

Quoted 5 lines
Quoted 5 lines

- #power-domain-cells: number of cells in Power domain specifier must be 1.
- operating-points-v2: Phandle to the OPP table for the Power
domain.

Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99b9a0-6c4e46e3-ff77-4cc1-95f6-9561975eedc4-000000@us-west-2.amazonses.com

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99ca93-ab6c1c1c-e20d-48ca-ab03-b8da0890fca8-000000@us-west-2.amazonses.com

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99df8a-05504a3e-9962-4255-94e0-706e8186cd0a-000000@us-west-2.amazonses.com

Reviewed-by
#29 lore raw

Re: [PATCH 5/6] soc: qcom: rpmhpd: Add SC7180 RPMH power-domains

Quoting Sibi Sankar (2019-11-18 09:40:21)

Quoted 5 lines

Add support for cx/mx/gfx/lcx/lmx/mss power-domains found on SC7180 SoCs.

---

drivers/soc/qcom/rpmhpd.c static const struct rpmhpd_desc sm8150_desc = { · line 170

Quoted 13 lines
 drivers/soc/qcom/rpmhpd.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
drivers/soc/qcom/rpmhpd.c +2 -0
index 3b109ee67a4d2..599208722650d 100644
@@ -166,7 +166,26 @@ static const struct rpmhpd_desc sm8150_desc = {
        .num_pds = ARRAY_SIZE(sm8150_rpmhpds),
 };
 
+/* SC7180 RPMH powerdomains */
+

Nitpick: Remove the extra newline

Quoted 10 lines
drivers/soc/qcom/rpmhpd.c +10 -0
+static struct rpmhpd *sc7180_rpmhpds[] = {
+       [SC7180_CX] = &sdm845_cx,
+       [SC7180_CX_AO] = &sdm845_cx_ao,
+       [SC7180_GFX] = &sdm845_gfx,
+       [SC7180_MX] = &sdm845_mx,
+       [SC7180_MX_AO] = &sdm845_mx_ao,
+       [SC7180_LMX] = &sdm845_lmx,
+       [SC7180_LCX] = &sdm845_lcx,
+       [SC7180_MSS] = &sdm845_mss,
+};
#30 lore raw

Re: [PATCH 5/6] soc: qcom: rpmhpd: Add SC7180 RPMH power-domains

Quoted 20 lines · Stephen Boyd

Quoting Sibi Sankar (2019-11-18 09:40:21)

Quoted 5 lines

Add support for cx/mx/gfx/lcx/lmx/mss power-domains found on SC7180 SoCs.

---

Quoted 11 lines
 drivers/soc/qcom/rpmhpd.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
drivers/soc/qcom/rpmhpd.c +0 -0
index 3b109ee67a4d2..599208722650d 100644
@@ -166,7 +166,26 @@ static const struct rpmhpd_desc sm8150_desc = {
        .num_pds = ARRAY_SIZE(sm8150_rpmhpds),
 };
 
Quoted 4 lines

drivers/soc/qcom/rpmhpd.c static const struct rpmhpd_desc sm8150_desc = { · line 170

Quoted 2 lines
drivers/soc/qcom/rpmhpd.c +2 -0
+/* SC7180 RPMH powerdomains */
+

Nitpick: Remove the extra newline

okay

Quoted 11 lines
Quoted 11 lines
drivers/soc/qcom/rpmhpd.c +10 -0
+static struct rpmhpd *sc7180_rpmhpds[] = {
+       [SC7180_CX] = &sdm845_cx,
+       [SC7180_CX_AO] = &sdm845_cx_ao,
+       [SC7180_GFX] = &sdm845_gfx,
+       [SC7180_MX] = &sdm845_mx,
+       [SC7180_MX_AO] = &sdm845_mx_ao,
+       [SC7180_LMX] = &sdm845_lmx,
+       [SC7180_LCX] = &sdm845_lcx,
+       [SC7180_MSS] = &sdm845_mss,
+};
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99eaca-e623ce91-3e2a-40ae-bf2d-647a786aa7d7-000000@us-west-2.amazonses.com

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99ad2b-2bce2fac-2f02-4b3f-ac64-09942f7251ea-000000@us-west-2.amazonses.com

Reviewed-by
#34 lore raw
Quoted 2 lines · Sibi Sankar

Add RPMH power-domain bindings for the SM8150 family of SoCs.

Quoted 53 lines
---
 .../devicetree/bindings/power/qcom,rpmpd.txt       |  1 +
 include/dt-bindings/power/qcom-rpmpd.h             | 14 ++++++++++++++
 2 files changed, 15 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index bc75bf49cdaea..f3bbaa4aef297 100644
@@ -10,6 +10,7 @@ Required Properties:
 	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
 	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
 	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
+	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
  - #power-domain-cells: number of cells in Power domain specifier
 	must be 1.
  - operating-points-v2: Phandle to the OPP table for the Power domain.
include/dt-bindings/power/qcom-rpmpd.h +14 -0
index f05f8b1808ec9..7d43bafc0026b 100644
@@ -15,12 +15,26 @@
 #define SDM845_GFX	7
 #define SDM845_MSS	8
 
+/* SM8150 Power Domain Indexes */
+#define SM8150_MSS	0
+#define SM8150_EBI	1
+#define SM8150_LMX	2
+#define SM8150_LCX	3
+#define SM8150_GFX	4
+#define SM8150_MX	5
+#define SM8150_MX_AO	6
+#define SM8150_CX	7
+#define SM8150_CX_AO	8
+#define SM8150_MMCX	9
+#define SM8150_MMCX_AO	10
+
 /* SDM845 Power Domain performance levels */
 #define RPMH_REGULATOR_LEVEL_RETENTION	16
 #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
 #define RPMH_REGULATOR_LEVEL_LOW_SVS	64
 #define RPMH_REGULATOR_LEVEL_SVS	128
 #define RPMH_REGULATOR_LEVEL_SVS_L1	192
+#define RPMH_REGULATOR_LEVEL_SVS_L2	224
 #define RPMH_REGULATOR_LEVEL_NOM	256
 #define RPMH_REGULATOR_LEVEL_NOM_L1	320
 #define RPMH_REGULATOR_LEVEL_NOM_L2	336
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99dc94-4513a473-16b3-418a-86cf-a89322016215-000000@us-west-2.amazonses.com

Reviewed-by
#36 lore raw

Re: [PATCH 5/6] soc: qcom: rpmhpd: Add SC7180 RPMH power-domains

Quoted 3 lines · Sibi Sankar

Add support for cx/mx/gfx/lcx/lmx/mss power-domains found on SC7180 SoCs.

Quoted 40 lines
---
 drivers/soc/qcom/rpmhpd.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
drivers/soc/qcom/rpmhpd.c +19 -0
index 3b109ee67a4d2..599208722650d 100644
@@ -166,7 +166,26 @@ static const struct rpmhpd_desc sm8150_desc = {
 	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
 };
 
+/* SC7180 RPMH powerdomains */
+
+static struct rpmhpd *sc7180_rpmhpds[] = {
+	[SC7180_CX] = &sdm845_cx,
+	[SC7180_CX_AO] = &sdm845_cx_ao,
+	[SC7180_GFX] = &sdm845_gfx,
+	[SC7180_MX] = &sdm845_mx,
+	[SC7180_MX_AO] = &sdm845_mx_ao,
+	[SC7180_LMX] = &sdm845_lmx,
+	[SC7180_LCX] = &sdm845_lcx,
+	[SC7180_MSS] = &sdm845_mss,
+};
+
+static const struct rpmhpd_desc sc7180_desc = {
+	.rpmhpds = sc7180_rpmhpds,
+	.num_pds = ARRAY_SIZE(sc7180_rpmhpds),
+};
+
 static const struct of_device_id rpmhpd_match_table[] = {
+	{ .compatible = "qcom,sc7180-rpmhpd", .data = &sc7180_desc },
 	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
 	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
 	{ }
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

A message that is not in the archive (sent off-list or not yet received): 0101016e7f99efe5-cee866e3-7031-4ecf-a8a6-4b247e9e69ff-000000@us-west-2.amazonses.com

Reviewed-by
#38 lore raw

Re: [PATCH 6/6] arm64: dts: sm8150: Add rpmh power-domain node

Quoted 2 lines · Sibi Sankar

Add the DT node for the rpmhpd power controller.

Quoted 82 lines
---
 arch/arm64/boot/dts/qcom/sm8150.dtsi | 55 ++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
arch/arm64/boot/dts/qcom/sm8150.dtsi +55 -0
index 8f23fcadecb89..0ac257637c2af 100644
@@ -5,6 +5,7 @@
  */
 
 #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 #include <dt-bindings/clock/qcom,rpmh.h>
 
@@ -469,6 +470,60 @@
 				clock-names = "xo";
 				clocks = <&xo_board>;
 			};
+
+			rpmhpd: power-controller {
+				compatible = "qcom,sm8150-rpmhpd";
+				#power-domain-cells = <1>;
+				operating-points-v2 = <&rpmhpd_opp_table>;
+
+				rpmhpd_opp_table: opp-table {
+					compatible = "operating-points-v2";
+
+					rpmhpd_opp_ret: opp1 {
+						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
+					};
+
+					rpmhpd_opp_min_svs: opp2 {
+						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
+					};
+
+					rpmhpd_opp_low_svs: opp3 {
+						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+					};
+
+					rpmhpd_opp_svs: opp4 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+					};
+
+					rpmhpd_opp_svs_l1: opp5 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+					};
+
+					rpmhpd_opp_svs_l2: opp6 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
+					};
+
+					rpmhpd_opp_nom: opp7 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+					};
+
+					rpmhpd_opp_nom_l1: opp8 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+					};
+
+					rpmhpd_opp_nom_l2: opp9 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
+					};
+
+					rpmhpd_opp_turbo: opp10 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+					};
+
+					rpmhpd_opp_turbo_l1: opp11 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+					};
+				};
+			};
 		};
 	};
 
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

A message that is not in the archive (sent off-list or not yet received): [email protected]

Reviewed-by
#40 lore raw

Re: [PATCH 4/6] dt-bindings: power: Add rpmh power-domain bindings for sc7180

Quoted 4 lines · Sibi Sankar

Add RPMH power-domain bindings for the SC7180 family of SoCs.

---

Quoted 38 lines
  Documentation/devicetree/bindings/power/qcom,rpmpd.txt |  1 +
  include/dt-bindings/power/qcom-rpmpd.h                 | 10 ++++++++++
  2 files changed, 11 insertions(+)
Documentation/devicetree/bindings/power/qcom,rpmpd.txt +1 -0
index f3bbaa4aef297..6346d00b1b400 100644
@@ -9,6 +9,7 @@ Required Properties:
  	* qcom,msm8996-rpmpd: RPM Power domain for the msm8996 family of SoC
  	* qcom,msm8998-rpmpd: RPM Power domain for the msm8998 family of SoC
  	* qcom,qcs404-rpmpd: RPM Power domain for the qcs404 family of SoC
+	* qcom,sc7180-rpmhpd: RPMh Power domain for the sc7180 family of SoC
  	* qcom,sdm845-rpmhpd: RPMh Power domain for the sdm845 family of SoC
  	* qcom,sm8150-rpmhpd: RPMh Power domain for the sm8150 family of SoC
   - #power-domain-cells: number of cells in Power domain specifier
include/dt-bindings/power/qcom-rpmpd.h +10 -0
index 7d43bafc0026b..3f74096d5a7ca 100644
@@ -28,6 +28,16 @@
  #define SM8150_MMCX	9
  #define SM8150_MMCX_AO	10
 
+/* SC7180 Power Domain Indexes */
+#define SC7180_CX	0
+#define SC7180_CX_AO	1
+#define SC7180_GFX	2
+#define SC7180_MX	3
+#define SC7180_MX_AO	4
+#define SC7180_LMX	5
+#define SC7180_LCX	6
+#define SC7180_MSS	7
+
  /* SDM845 Power Domain performance levels */
  #define RPMH_REGULATOR_LEVEL_RETENTION	16
  #define RPMH_REGULATOR_LEVEL_MIN_SVS	48
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation

A message that is not in the archive (sent off-list or not yet received): [email protected]

Reviewed-by
#42 lore raw

Re: [PATCH 5/6] soc: qcom: rpmhpd: Add SC7180 RPMH power-domains

Quoted 5 lines · Sibi Sankar

Add support for cx/mx/gfx/lcx/lmx/mss power-domains found on SC7180 SoCs.

---

Quoted 35 lines
  drivers/soc/qcom/rpmhpd.c | 19 +++++++++++++++++++
  1 file changed, 19 insertions(+)
drivers/soc/qcom/rpmhpd.c +19 -0
index 3b109ee67a4d2..599208722650d 100644
@@ -166,7 +166,26 @@ static const struct rpmhpd_desc sm8150_desc = {
  	.num_pds = ARRAY_SIZE(sm8150_rpmhpds),
  };
 
+/* SC7180 RPMH powerdomains */
+
+static struct rpmhpd *sc7180_rpmhpds[] = {
+	[SC7180_CX] = &sdm845_cx,
+	[SC7180_CX_AO] = &sdm845_cx_ao,
+	[SC7180_GFX] = &sdm845_gfx,
+	[SC7180_MX] = &sdm845_mx,
+	[SC7180_MX_AO] = &sdm845_mx_ao,
+	[SC7180_LMX] = &sdm845_lmx,
+	[SC7180_LCX] = &sdm845_lcx,
+	[SC7180_MSS] = &sdm845_mss,
+};
+
+static const struct rpmhpd_desc sc7180_desc = {
+	.rpmhpds = sc7180_rpmhpds,
+	.num_pds = ARRAY_SIZE(sc7180_rpmhpds),
+};
+
  static const struct of_device_id rpmhpd_match_table[] = {
+	{ .compatible = "qcom,sc7180-rpmhpd", .data = &sc7180_desc },
  	{ .compatible = "qcom,sdm845-rpmhpd", .data = &sdm845_desc },
  	{ .compatible = "qcom,sm8150-rpmhpd", .data = &sm8150_desc },
  	{ }
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation

A message that is not in the archive (sent off-list or not yet received): [email protected]

Reviewed-by
#44 lore raw

Re: [PATCH 6/6] arm64: dts: sm8150: Add rpmh power-domain node

Quoted 4 lines · Sibi Sankar

Add the DT node for the rpmhpd power controller.

---

Quoted 77 lines
  arch/arm64/boot/dts/qcom/sm8150.dtsi | 55 ++++++++++++++++++++++++++++
  1 file changed, 55 insertions(+)
arch/arm64/boot/dts/qcom/sm8150.dtsi +55 -0
index 8f23fcadecb89..0ac257637c2af 100644
@@ -5,6 +5,7 @@
   */
 
  #include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/power/qcom-rpmpd.h>
  #include <dt-bindings/soc/qcom,rpmh-rsc.h>
  #include <dt-bindings/clock/qcom,rpmh.h>
 
@@ -469,6 +470,60 @@
  				clock-names = "xo";
  				clocks = <&xo_board>;
  			};
+
+			rpmhpd: power-controller {
+				compatible = "qcom,sm8150-rpmhpd";
+				#power-domain-cells = <1>;
+				operating-points-v2 = <&rpmhpd_opp_table>;
+
+				rpmhpd_opp_table: opp-table {
+					compatible = "operating-points-v2";
+
+					rpmhpd_opp_ret: opp1 {
+						opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
+					};
+
+					rpmhpd_opp_min_svs: opp2 {
+						opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
+					};
+
+					rpmhpd_opp_low_svs: opp3 {
+						opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+					};
+
+					rpmhpd_opp_svs: opp4 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+					};
+
+					rpmhpd_opp_svs_l1: opp5 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+					};
+
+					rpmhpd_opp_svs_l2: opp6 {
+						opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
+					};
+
+					rpmhpd_opp_nom: opp7 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+					};
+
+					rpmhpd_opp_nom_l1: opp8 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+					};
+
+					rpmhpd_opp_nom_l2: opp9 {
+						opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
+					};
+
+					rpmhpd_opp_turbo: opp10 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+					};
+
+					rpmhpd_opp_turbo_l1: opp11 {
+						opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+					};
+				};
+			};
  		};
  	};
 
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation