diff options
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gpu.c')
-rw-r--r-- | drivers/gpu/drm/msm/msm_gpu.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c index 937f1a0c5d3c..f8ee1489e691 100644 --- a/drivers/gpu/drm/msm/msm_gpu.c +++ b/drivers/gpu/drm/msm/msm_gpu.c | |||
@@ -123,8 +123,12 @@ static int disable_clk(struct msm_gpu *gpu) | |||
123 | if (gpu->grp_clks[i]) | 123 | if (gpu->grp_clks[i]) |
124 | clk_unprepare(gpu->grp_clks[i]); | 124 | clk_unprepare(gpu->grp_clks[i]); |
125 | 125 | ||
126 | if (gpu->grp_clks[0] && gpu->slow_rate) | 126 | /* |
127 | clk_set_rate(gpu->grp_clks[0], gpu->slow_rate); | 127 | * Set the clock to a deliberately low rate. On older targets the clock |
128 | * speed had to be non zero to avoid problems. On newer targets this | ||
129 | * will be rounded down to zero anyway so it all works out. | ||
130 | */ | ||
131 | clk_set_rate(gpu->grp_clks[0], 27000000); | ||
128 | 132 | ||
129 | if (gpu->grp_clks[2]) | 133 | if (gpu->grp_clks[2]) |
130 | clk_set_rate(gpu->grp_clks[2], 0); | 134 | clk_set_rate(gpu->grp_clks[2], 0); |