]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
clk: qcom: mmcc-sdm660: fix stuck video_subcore0 clock
authorBarnabás Czémán <barnabas.czeman@mainlining.org>
Sat, 15 Mar 2025 15:26:17 +0000 (16:26 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Apr 2025 12:39:21 +0000 (14:39 +0200)
[ Upstream commit 000cbe3896c56bf5c625e286ff096533a6b27657 ]

This clock can't be enable with VENUS_CORE0 GDSC turned off. But that
GDSC is under HW control so it can be turned off at any moment.
Instead of checking the dependent clock we can just vote for it to
enable later when GDSC gets turned on.

Fixes: 5db3ae8b33de6 ("clk: qcom: Add SDM660 Multimedia Clock Controller (MMCC) driver")
Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org>
Link: https://lore.kernel.org/r/20250315-clock-fix-v1-1-2efdc4920dda@mainlining.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/clk/qcom/mmcc-sdm660.c

index 98ba5b4518fb3ba35c159e3dddf6abf922f18920..b9f02d91004e8bf4a2ae3755ebeec72ada27b81e 100644 (file)
@@ -2544,7 +2544,7 @@ static struct clk_branch video_core_clk = {
 
 static struct clk_branch video_subcore0_clk = {
        .halt_reg = 0x1048,
-       .halt_check = BRANCH_HALT,
+       .halt_check = BRANCH_HALT_SKIP,
        .clkr = {
                .enable_reg = 0x1048,
                .enable_mask = BIT(0),