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

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

On SDM845 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: 78412c262004 ("clk: qcom: Add camera clock controller driver for SDM845")
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-2-vladimir.zapolskiy@linaro.org

authored by

Vladimir Zapolskiy and committed by
Bjorn Andersson
103dd233 1bf7305e

+4
+4
drivers/clk/qcom/camcc-sdm845.c
··· 1534 1534 }, 1535 1535 }; 1536 1536 1537 + static struct gdsc titan_top_gdsc; 1538 + 1537 1539 static struct gdsc bps_gdsc = { 1538 1540 .gdscr = 0x6004, 1539 1541 .pd = { ··· 1569 1567 .name = "ife_0_gdsc", 1570 1568 }, 1571 1569 .flags = POLL_CFG_GDSCR, 1570 + .parent = &titan_top_gdsc.pd, 1572 1571 .pwrsts = PWRSTS_OFF_ON, 1573 1572 }; 1574 1573 ··· 1579 1576 .name = "ife_1_gdsc", 1580 1577 }, 1581 1578 .flags = POLL_CFG_GDSCR, 1579 + .parent = &titan_top_gdsc.pd, 1582 1580 .pwrsts = PWRSTS_OFF_ON, 1583 1581 }; 1584 1582