clk: qcom: mmcc-msm8974: remove oxili_ocmemgx_clk
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Mon, 8 May 2023 15:33:19 +0000 (18:33 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Jul 2023 14:21:49 +0000 (16:21 +0200)
[ Upstream commit 853c064b57491d739bfd0cc35ff75c5ea9c5e8f5 ]

After the internal discussions, it looks like this clock is managed by
RPM itself. Linux kernel should not touch it on its own, as this causes
disagreement with RPM. Shutting down this clock causes the OCMEM<->GPU
interface to stop working, resulting in GPU hangchecks/timeouts.

Fixes: d8b212014e69 ("clk: qcom: Add support for MSM8974's multimedia clock controller (MMCC)")
Suggested-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tested-by: Luca Weiss <luca@z3ntu.xyz>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230508153319.2371645-1-dmitry.baryshkov@linaro.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/clk/qcom/mmcc-msm8974.c

index f746629..7d0b16d 100644 (file)
@@ -2192,23 +2192,6 @@ static struct clk_branch ocmemcx_ocmemnoc_clk = {
        },
 };
 
-static struct clk_branch oxili_ocmemgx_clk = {
-       .halt_reg = 0x402c,
-       .clkr = {
-               .enable_reg = 0x402c,
-               .enable_mask = BIT(0),
-               .hw.init = &(struct clk_init_data){
-                       .name = "oxili_ocmemgx_clk",
-                       .parent_names = (const char *[]){
-                               "gfx3d_clk_src",
-                       },
-                       .num_parents = 1,
-                       .flags = CLK_SET_RATE_PARENT,
-                       .ops = &clk_branch2_ops,
-               },
-       },
-};
-
 static struct clk_branch ocmemnoc_clk = {
        .halt_reg = 0x50b4,
        .clkr = {
@@ -2500,7 +2483,6 @@ static struct clk_regmap *mmcc_msm8226_clocks[] = {
        [MMSS_MMSSNOC_AXI_CLK] = &mmss_mmssnoc_axi_clk.clkr,
        [MMSS_S0_AXI_CLK] = &mmss_s0_axi_clk.clkr,
        [OCMEMCX_AHB_CLK] = &ocmemcx_ahb_clk.clkr,
-       [OXILI_OCMEMGX_CLK] = &oxili_ocmemgx_clk.clkr,
        [OXILI_GFX3D_CLK] = &oxili_gfx3d_clk.clkr,
        [OXILICX_AHB_CLK] = &oxilicx_ahb_clk.clkr,
        [OXILICX_AXI_CLK] = &oxilicx_axi_clk.clkr,
@@ -2658,7 +2640,6 @@ static struct clk_regmap *mmcc_msm8974_clocks[] = {
        [MMSS_S0_AXI_CLK] = &mmss_s0_axi_clk.clkr,
        [OCMEMCX_AHB_CLK] = &ocmemcx_ahb_clk.clkr,
        [OCMEMCX_OCMEMNOC_CLK] = &ocmemcx_ocmemnoc_clk.clkr,
-       [OXILI_OCMEMGX_CLK] = &oxili_ocmemgx_clk.clkr,
        [OCMEMNOC_CLK] = &ocmemnoc_clk.clkr,
        [OXILI_GFX3D_CLK] = &oxili_gfx3d_clk.clkr,
        [OXILICX_AHB_CLK] = &oxilicx_ahb_clk.clkr,