diff mbox

clk: qcom: msm8916: Fix bimc gpu clock ops

Message ID 20170818142250.27867-1-georgi.djakov@linaro.org
State Accepted
Commit de2245540ed84c56ba3d71d1ce8e14fdaf332720
Headers show

Commit Message

Georgi Djakov Aug. 18, 2017, 2:22 p.m. UTC
The clock bimc_gpu_clk_src is incorrectly set to use the shared rcg2
ops, which are for RCGs with child branches controlled by different
CPUs.

The result of the incorrect ops is that the GPU's PM runtime may leave
this clock set at a very low rate. Fix this issue by using the correct
rcg2 ops.

Fixes: a2e8272f3f89 ("clk: qcom: Add MSM8916 gpu clocks")
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>

---
 drivers/clk/qcom/gcc-msm8916.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Stephen Boyd Aug. 23, 2017, 10:55 p.m. UTC | #1
On 08/18, Georgi Djakov wrote:
> The clock bimc_gpu_clk_src is incorrectly set to use the shared rcg2

> ops, which are for RCGs with child branches controlled by different

> CPUs.

> 

> The result of the incorrect ops is that the GPU's PM runtime may leave

> this clock set at a very low rate. Fix this issue by using the correct

> rcg2 ops.

> 

> Fixes: a2e8272f3f89 ("clk: qcom: Add MSM8916 gpu clocks")

> Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>

> ---


This is the only user of clk_rcg2_shared_ops. I'm totally lost
why we added this in the first place.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
Stephen Boyd Nov. 2, 2017, 6:43 a.m. UTC | #2
On 08/24, Georgi Djakov wrote:
> The RCGs ops for shared branches are not used now, so remove it.

> 

> Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>

> ---


Applied to clk-next

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
diff mbox

Patch

diff --git a/drivers/clk/qcom/gcc-msm8916.c b/drivers/clk/qcom/gcc-msm8916.c
index 2cfe7000fc60..3410ee68d4bc 100644
--- a/drivers/clk/qcom/gcc-msm8916.c
+++ b/drivers/clk/qcom/gcc-msm8916.c
@@ -1176,7 +1176,7 @@  static struct clk_rcg2 bimc_gpu_clk_src = {
 		.parent_names = gcc_xo_gpll0_bimc,
 		.num_parents = 3,
 		.flags = CLK_GET_RATE_NOCACHE,
-		.ops = &clk_rcg2_shared_ops,
+		.ops = &clk_rcg2_ops,
 	},
 };