aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Zapolskiy <vladimir.zapolskiy@linaro.org>2022-05-20 13:37:30 +0300
committerVladimir Zapolskiy <vladimir.zapolskiy@linaro.org>2022-05-20 13:41:21 +0300
commit280348f0e58773ccfea42effffd745f04fcb5944 (patch)
treee40c648e20e8fb7668c99a747681af181278ba45
parent430bcacfa2a2bb1d6d06debdf67c8bd86ddbd23a (diff)
clk: qcom: camcc-sm8450: Fix topology around titan_top power domain
On SM8450 all VFE and SFE GDSC power domains shall not be operated, if Titan top GDSC is turned off, thus the former power domains shall be set as subdomains of Titan top GDSC by a common GDSC registration routine. Signed-off-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
-rw-r--r--drivers/clk/qcom/camcc-sm8450.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/clk/qcom/camcc-sm8450.c b/drivers/clk/qcom/camcc-sm8450.c
index dc0a69c56827..f213c33647e2 100644
--- a/drivers/clk/qcom/camcc-sm8450.c
+++ b/drivers/clk/qcom/camcc-sm8450.c
@@ -2715,6 +2715,8 @@ static const struct regmap_config cam_cc_sm8450_regmap_config = {
.fast_io = true,
};
+static struct gdsc titan_top_gdsc;
+
static struct gdsc bps_gdsc = {
.gdscr = 0x10004,
.pd = {
@@ -2748,6 +2750,7 @@ static struct gdsc ife_0_gdsc = {
.name = "ife_0_gdsc",
},
.flags = POLL_CFG_GDSCR,
+ .parent = &titan_top_gdsc.pd,
.pwrsts = PWRSTS_OFF_ON,
};
@@ -2757,6 +2760,7 @@ static struct gdsc ife_1_gdsc = {
.name = "ife_1_gdsc",
},
.flags = POLL_CFG_GDSCR,
+ .parent = &titan_top_gdsc.pd,
.pwrsts = PWRSTS_OFF_ON,
};
@@ -2766,6 +2770,7 @@ static struct gdsc ife_2_gdsc = {
.name = "ife_2_gdsc",
},
.flags = POLL_CFG_GDSCR,
+ .parent = &titan_top_gdsc.pd,
.pwrsts = PWRSTS_OFF_ON,
};
@@ -2775,6 +2780,7 @@ static struct gdsc sfe_0_gdsc = {
.name = "sfe_0_gdsc",
},
.flags = POLL_CFG_GDSCR,
+ .parent = &titan_top_gdsc.pd,
.pwrsts = PWRSTS_OFF_ON,
};
@@ -2784,6 +2790,7 @@ static struct gdsc sfe_1_gdsc = {
.name = "sfe_1_gdsc",
},
.flags = POLL_CFG_GDSCR,
+ .parent = &titan_top_gdsc.pd,
.pwrsts = PWRSTS_OFF_ON,
};