Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: qcom: camcc-sm8250: Fix topology around titan_top power domain

On SM8250 two found VFE GDSC power domains shall not be operated, if
titan top is turned off, thus the former power domains will be set as
subdomains by a GDSC registration routine.

Fixes: 5d66ca79b58c ("clk: qcom: Add camera clock controller driver for SM8250")
Signed-off-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Reviewed-by: Robert Foss <robert.foss@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220519214133.1728979-3-vladimir.zapolskiy@linaro.org

authored by

Vladimir Zapolskiy and committed by
Bjorn Andersson
f8acf01a 103dd233

+4
+4
drivers/clk/qcom/camcc-sm8250.c
··· 2205 2205 }, 2206 2206 }; 2207 2207 2208 + static struct gdsc titan_top_gdsc; 2209 + 2208 2210 static struct gdsc bps_gdsc = { 2209 2211 .gdscr = 0x7004, 2210 2212 .pd = { ··· 2240 2238 .name = "ife_0_gdsc", 2241 2239 }, 2242 2240 .flags = POLL_CFG_GDSCR, 2241 + .parent = &titan_top_gdsc.pd, 2243 2242 .pwrsts = PWRSTS_OFF_ON, 2244 2243 }; 2245 2244 ··· 2250 2247 .name = "ife_1_gdsc", 2251 2248 }, 2252 2249 .flags = POLL_CFG_GDSCR, 2250 + .parent = &titan_top_gdsc.pd, 2253 2251 .pwrsts = PWRSTS_OFF_ON, 2254 2252 }; 2255 2253