]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
clk: qcom: ipq6018: drop the CLK_SET_RATE_PARENT flag from PLL clocks
authorKathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Thu, 14 Sep 2023 06:59:52 +0000 (12:29 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 28 Nov 2023 16:56:28 +0000 (16:56 +0000)
commit 99cd4935cb972d0aafb16838bb2aeadbcaf196ce upstream.

GPLL, NSS crypto PLL clock rates are fixed and shouldn't be scaled based
on the request from dependent clocks. Doing so will result in the
unexpected behaviour. So drop the CLK_SET_RATE_PARENT flag from the PLL
clocks.

Cc: stable@vger.kernel.org
Fixes: d9db07f088af ("clk: qcom: Add ipq6018 Global Clock Controller support")
Signed-off-by: Kathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20230913-gpll_cleanup-v2-2-c8ceb1a37680@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clk/qcom/gcc-ipq6018.c

index cde62a11f57361402790e465af3be10e2198be3f..4c5c7a8f41d0846fae7642e8033d32fe96a08bf1 100644 (file)
@@ -75,7 +75,6 @@ static struct clk_fixed_factor gpll0_out_main_div2 = {
                                &gpll0_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_fixed_factor_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };
 
@@ -89,7 +88,6 @@ static struct clk_alpha_pll_postdiv gpll0 = {
                                &gpll0_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_alpha_pll_postdiv_ro_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };
 
@@ -164,7 +162,6 @@ static struct clk_alpha_pll_postdiv gpll6 = {
                                &gpll6_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_alpha_pll_postdiv_ro_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };
 
@@ -195,7 +192,6 @@ static struct clk_alpha_pll_postdiv gpll4 = {
                                &gpll4_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_alpha_pll_postdiv_ro_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };
 
@@ -246,7 +242,6 @@ static struct clk_alpha_pll_postdiv gpll2 = {
                                &gpll2_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_alpha_pll_postdiv_ro_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };
 
@@ -277,7 +272,6 @@ static struct clk_alpha_pll_postdiv nss_crypto_pll = {
                                &nss_crypto_pll_main.clkr.hw },
                .num_parents = 1,
                .ops = &clk_alpha_pll_postdiv_ro_ops,
-               .flags = CLK_SET_RATE_PARENT,
        },
 };