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-omap1/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-omap1/clock.c')
-rw-r--r-- | arch/arm/mach-omap1/clock.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/arch/arm/mach-omap1/clock.c b/arch/arm/mach-omap1/clock.c index 80a58e9dbba3..be500014dcb8 100644 --- a/arch/arm/mach-omap1/clock.c +++ b/arch/arm/mach-omap1/clock.c | |||
@@ -244,9 +244,6 @@ static void omap1_ckctl_recalc(struct clk * clk) | |||
244 | if (unlikely(clk->rate == clk->parent->rate / dsor)) | 244 | if (unlikely(clk->rate == clk->parent->rate / dsor)) |
245 | return; /* No change, quick exit */ | 245 | return; /* No change, quick exit */ |
246 | clk->rate = clk->parent->rate / dsor; | 246 | clk->rate = clk->parent->rate / dsor; |
247 | |||
248 | if (unlikely(clk->flags & RATE_PROPAGATES)) | ||
249 | propagate_rate(clk); | ||
250 | } | 247 | } |
251 | 248 | ||
252 | static void omap1_ckctl_recalc_dsp_domain(struct clk * clk) | 249 | static void omap1_ckctl_recalc_dsp_domain(struct clk * clk) |
@@ -267,9 +264,6 @@ static void omap1_ckctl_recalc_dsp_domain(struct clk * clk) | |||
267 | if (unlikely(clk->rate == clk->parent->rate / dsor)) | 264 | if (unlikely(clk->rate == clk->parent->rate / dsor)) |
268 | return; /* No change, quick exit */ | 265 | return; /* No change, quick exit */ |
269 | clk->rate = clk->parent->rate / dsor; | 266 | clk->rate = clk->parent->rate / dsor; |
270 | |||
271 | if (unlikely(clk->flags & RATE_PROPAGATES)) | ||
272 | propagate_rate(clk); | ||
273 | } | 267 | } |
274 | 268 | ||
275 | /* MPU virtual clock functions */ | 269 | /* MPU virtual clock functions */ |