summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authorRajesh Kemisetti <rajeshk@codeaurora.org>2017-01-26 18:08:16 +0530
committerRajesh Kemisetti <rajeshk@codeaurora.org>2017-02-06 15:25:01 +0530
commitac6d567b7a10ac8c27a590c4e1db13aaf4366ee6 (patch)
tree8aadcb05c9fa20e6f34848922e1afe1ef2c032d5 /drivers/gpu
parent2e47ba9a64f870431dd7709f454ba51dca0f89e9 (diff)
msm: kgsl: Do required clock settings for SDM660 GPU
Enable retention of memory and periphery logics for GPU core clock. If the setting is not done then GPU might get stale data while switching from NAP to ACTIVE and which leads to page faults or hangs. Clock settings need to be handled by client drivers only and hence do it in KGSL driver. Change-Id: Iea3fd720e2a0eda9f6ee719177a8898bc2bd75e4 Signed-off-by: Rajesh Kemisetti <rajeshk@codeaurora.org>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/msm/adreno_a5xx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/msm/adreno_a5xx.c b/drivers/gpu/msm/adreno_a5xx.c
index 15c4b9427f8e..7e2e3aa91fce 100644
--- a/drivers/gpu/msm/adreno_a5xx.c
+++ b/drivers/gpu/msm/adreno_a5xx.c
@@ -1639,7 +1639,8 @@ static void a5xx_pwrlevel_change_settings(struct adreno_device *adreno_dev,
static void a5xx_clk_set_options(struct adreno_device *adreno_dev,
const char *name, struct clk *clk)
{
- if (adreno_is_a540(adreno_dev)) {
+ /* Handle clock settings for GFX PSCBCs */
+ if (adreno_is_a540(adreno_dev) || adreno_is_a512(adreno_dev)) {
if (!strcmp(name, "mem_iface_clk")) {
clk_set_flags(clk, CLKFLAG_NORETAIN_PERIPH);
clk_set_flags(clk, CLKFLAG_NORETAIN_MEM);