diff options
author | Alex Frid <afrid@nvidia.com> | 2012-05-04 18:07:08 -0700 |
---|---|---|
committer | Varun Wadekar <vwadekar@nvidia.com> | 2012-05-14 17:58:39 +0530 |
commit | a50cdf7dca53a11413af6bffb1b67120fd6a2f27 (patch) | |
tree | 4ee66a323f2f555aba947088cc7dc775690c5db6 /arch/arm/mach-tegra/clock.c | |
parent | 651686f3acdb2b3b15ba35c7907870d3f54171d0 (diff) |
Revert "ARM: tegra: clock: Don't fail clk_enable when max_rate has been lowered"
This reverts commit 8d351aa5478de533114e614f2607bc85ed23df91.
The above commit introduced recursive call of clk enable/set rate APIs
that may hang the system.
Change-Id: I04eff9e1c3ddee82f6d2e17690122cc41fad203f
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/100710
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/clock.c')
-rw-r--r-- | arch/arm/mach-tegra/clock.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/arch/arm/mach-tegra/clock.c b/arch/arm/mach-tegra/clock.c index ae97e123a534..9c3013743003 100644 --- a/arch/arm/mach-tegra/clock.c +++ b/arch/arm/mach-tegra/clock.c @@ -239,16 +239,9 @@ void clk_init(struct clk *c) static int clk_enable_locked(struct clk *c) { int ret = 0; - int rate = clk_get_rate_locked(c); - bool set_rate = false; - - if (rate > c->max_rate) { - rate = c->max_rate; - set_rate = true; - } if (clk_is_auto_dvfs(c)) { - ret = tegra_dvfs_set_rate(c, rate); + ret = tegra_dvfs_set_rate(c, clk_get_rate_locked(c)); if (ret) return ret; } @@ -260,9 +253,6 @@ static int clk_enable_locked(struct clk *c) return ret; } - if (set_rate) - clk_set_rate_locked(c, rate); - if (c->ops && c->ops->enable) { ret = c->ops->enable(c); trace_clock_enable(c->name, 1, 0); |