diff options
author | Shawn Guo <shawn.guo@linaro.org> | 2012-04-12 14:50:18 +0200 |
---|---|---|
committer | Mike Turquette <mturquette@linaro.org> | 2012-04-25 01:37:40 +0200 |
commit | 1c0035d710dd3bfa86d58f851b8737c7f11a9bbc (patch) | |
tree | 37ebd1a44c408aecf7df5331d2b5a32e81818baf /drivers/clk/clk-divider.c | |
parent | clk: always pass parent_rate into .round_rate (diff) | |
download | linux-1c0035d710dd3bfa86d58f851b8737c7f11a9bbc.tar.xz linux-1c0035d710dd3bfa86d58f851b8737c7f11a9bbc.zip |
clk: pass parent_rate into .set_rate
For most of .set_rate implementation, parent_rate will be used, so just
like passing parent_rate into .recalc_rate, let's pass parent_rate into
.set_rate too.
It also updates the kernel doc for .set_rate ops.
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
Diffstat (limited to 'drivers/clk/clk-divider.c')
-rw-r--r-- | drivers/clk/clk-divider.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/clk/clk-divider.c b/drivers/clk/clk-divider.c index 03b127c0313b..90627e4069af 100644 --- a/drivers/clk/clk-divider.c +++ b/drivers/clk/clk-divider.c @@ -111,14 +111,15 @@ static long clk_divider_round_rate(struct clk_hw *hw, unsigned long rate, return *prate / div; } -static int clk_divider_set_rate(struct clk_hw *hw, unsigned long rate) +static int clk_divider_set_rate(struct clk_hw *hw, unsigned long rate, + unsigned long parent_rate) { struct clk_divider *divider = to_clk_divider(hw); unsigned int div; unsigned long flags = 0; u32 val; - div = __clk_get_rate(__clk_get_parent(hw->clk)) / rate; + div = parent_rate / rate; if (!(divider->flags & CLK_DIVIDER_ONE_BASED)) div--; |