summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/msm/kgsl_pwrctrl.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/gpu/msm/kgsl_pwrctrl.c b/drivers/gpu/msm/kgsl_pwrctrl.c
index c3b3ccf48a7b..ff6fae7c739b 100644
--- a/drivers/gpu/msm/kgsl_pwrctrl.c
+++ b/drivers/gpu/msm/kgsl_pwrctrl.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2017, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2010-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -2124,7 +2124,7 @@ static inline void _close_clks(struct kgsl_device *device)
int kgsl_pwrctrl_init(struct kgsl_device *device)
{
- int i, k, m, n = 0, result;
+ int i, k, m, n = 0, result, freq;
struct platform_device *pdev = device->pdev;
struct kgsl_pwrctrl *pwr = &device->pwrctrl;
struct device_node *ocmem_bus_node;
@@ -2170,7 +2170,7 @@ int kgsl_pwrctrl_init(struct kgsl_device *device)
pwr->wakeup_maxpwrlevel = 0;
for (i = 0; i < pwr->num_pwrlevels; i++) {
- unsigned int freq = pwr->pwrlevels[i].gpu_freq;
+ freq = pwr->pwrlevels[i].gpu_freq;
if (freq > 0)
freq = clk_round_rate(pwr->grp_clks[0], freq);
@@ -2181,11 +2181,10 @@ int kgsl_pwrctrl_init(struct kgsl_device *device)
kgsl_pwrctrl_clk_set_rate(pwr->grp_clks[0],
pwr->pwrlevels[pwr->num_pwrlevels - 1].gpu_freq, clocks[0]);
- if (pwr->grp_clks[6] != NULL)
+ freq = clk_round_rate(pwr->grp_clks[6], KGSL_RBBMTIMER_CLK_FREQ);
+ if (freq > 0)
kgsl_pwrctrl_clk_set_rate(pwr->grp_clks[6],
- clk_round_rate(pwr->grp_clks[6],
- KGSL_RBBMTIMER_CLK_FREQ),
- clocks[6]);
+ freq, clocks[6]);
_isense_clk_set_rate(pwr, pwr->num_pwrlevels - 1);