diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-11-13 08:44:15 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-02-08 12:50:11 -0500 |
commit | 9a5fedac187f30116013a8420149d4ca11a44f0d (patch) | |
tree | 3cdcd9e8887a6fa41d1ddd85eb8c759990adc27b /arch/arm/mach-omap2/clock.c | |
parent | a9e882096317a088087b608d272da7029a6cc8c8 (diff) |
[ARM] omap: move propagate_rate() calls into generic omap clock code
propagate_rate() is recursive, so it makes sense to minimise the
amount of stack which is used for each recursion. So, rather than
recursing back into it from the ->recalc functions if RATE_PROPAGATES
is set, do that test at the higher level.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-omap2/clock.c')
-rw-r--r-- | arch/arm/mach-omap2/clock.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c index 7a1d56af9e47..53fda9977d55 100644 --- a/arch/arm/mach-omap2/clock.c +++ b/arch/arm/mach-omap2/clock.c | |||
@@ -167,9 +167,6 @@ void omap2_fixed_divisor_recalc(struct clk *clk) | |||
167 | WARN_ON(!clk->fixed_div); | 167 | WARN_ON(!clk->fixed_div); |
168 | 168 | ||
169 | clk->rate = clk->parent->rate / clk->fixed_div; | 169 | clk->rate = clk->parent->rate / clk->fixed_div; |
170 | |||
171 | if (clk->flags & RATE_PROPAGATES) | ||
172 | propagate_rate(clk); | ||
173 | } | 170 | } |
174 | 171 | ||
175 | /** | 172 | /** |
@@ -392,9 +389,6 @@ void omap2_clksel_recalc(struct clk *clk) | |||
392 | clk->rate = clk->parent->rate / div; | 389 | clk->rate = clk->parent->rate / div; |
393 | 390 | ||
394 | pr_debug("clock: new clock rate is %ld (div %d)\n", clk->rate, div); | 391 | pr_debug("clock: new clock rate is %ld (div %d)\n", clk->rate, div); |
395 | |||
396 | if (unlikely(clk->flags & RATE_PROPAGATES)) | ||
397 | propagate_rate(clk); | ||
398 | } | 392 | } |
399 | 393 | ||
400 | /** | 394 | /** |