[PATCH] clk: clk_calc_new_rates() required for parent only if CLK_SET_RATE_PARENT is set
Viresh Kumar
viresh.kumar at st.com
Wed Apr 11 02:08:53 EDT 2012
We need to call clk_calc_new_rates() for parent clock only when we have
CLK_SET_RATE_PARENT flag set for clock.
This patch fixes it.
Signed-off-by: Viresh Kumar <viresh.kumar at st.com>
---
drivers/clk/clk.c | 15 +++++++--------
1 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index 2f58455..56e32a1 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -780,15 +780,14 @@ static struct clk *clk_calc_new_rates(struct clk *clk, unsigned long rate)
goto out;
}
- if (clk->flags & CLK_SET_RATE_PARENT)
- new_rate = clk->ops->round_rate(clk->hw, rate, &best_parent_rate);
- else
- new_rate = clk->ops->round_rate(clk->hw, rate, NULL);
-
- if (best_parent_rate != clk->parent->rate) {
- top = clk_calc_new_rates(clk->parent, best_parent_rate);
+ if (clk->flags & CLK_SET_RATE_PARENT) {
+ new_rate = clk->ops->round_rate(clk->hw, rate,
+ &best_parent_rate);
- goto out;
+ if (best_parent_rate != clk->parent->rate)
+ top = clk_calc_new_rates(clk->parent, best_parent_rate);
+ } else {
+ new_rate = clk->ops->round_rate(clk->hw, rate, NULL);
}
out:
--
1.7.9
More information about the linux-arm-kernel
mailing list