summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorKonrad Dybcio <konrad.dybcio@linaro.org>2023-03-13 21:00:07 +0100
committerBjorn Andersson <andersson@kernel.org>2023-03-15 15:40:28 -0700
commitec90637c9946cc8e37afa4c1feb33fdb1fa15b68 (patch)
treebcd74a282ae75d1271011465e5686e4fe9672056 /drivers
parentdecd6e77e02eff517efe11dfc181ce1b5bef3405 (diff)
downloadlinux-stable-ec90637c9946cc8e37afa4c1feb33fdb1fa15b68.tar.gz
linux-stable-ec90637c9946cc8e37afa4c1feb33fdb1fa15b68.tar.bz2
linux-stable-ec90637c9946cc8e37afa4c1feb33fdb1fa15b68.zip
soc: qcom: rpmpd: Hook up VDDMX as parent of SM6375 VDDGX
The GPU core clock requires that both VDDGX and VDDMX domains are scaled at the same rate at the same time (well, MX just before GX but you get the idea). Set MX as parent of GX to take care of that. Suggested-by: Bjorn Andersson <andersson@kernel.org> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> Signed-off-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20230313-topic-rpmpd-v3-9-06a4f448ff90@linaro.org
Diffstat (limited to 'drivers')
-rw-r--r--drivers/soc/qcom/rpmpd.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/soc/qcom/rpmpd.c b/drivers/soc/qcom/rpmpd.c
index 2027c820caa7..84283719853c 100644
--- a/drivers/soc/qcom/rpmpd.c
+++ b/drivers/soc/qcom/rpmpd.c
@@ -216,18 +216,22 @@ static struct rpmpd gfx_s2b_vfc = {
.key = KEY_FLOOR_CORNER,
};
+static struct rpmpd mx_rwmx0_lvl;
static struct rpmpd gx_rwgx0_lvl_ao;
static struct rpmpd gx_rwgx0_lvl = {
.pd = { .name = "gx", },
.peer = &gx_rwgx0_lvl_ao,
.res_type = RPMPD_RWGX,
+ .parent = &mx_rwmx0_lvl.pd,
.res_id = 0,
.key = KEY_LEVEL,
};
+static struct rpmpd mx_rwmx0_lvl_ao;
static struct rpmpd gx_rwgx0_lvl_ao = {
.pd = { .name = "gx_ao", },
.peer = &gx_rwgx0_lvl,
+ .parent = &mx_rwmx0_lvl_ao.pd,
.active_only = true,
.res_type = RPMPD_RWGX,
.res_id = 0,