summaryrefslogtreecommitdiffstats
path: root/drivers/clk
diff options
context:
space:
mode:
authorMike Turquette <mturquette@linaro.org>2014-01-14 21:56:01 +0100
committerMike Turquette <mturquette@linaro.org>2014-01-15 16:48:03 +0100
commit5d2043fbe4ddc6cc16ba71b49c2c13f4cb2fe932 (patch)
tree7252db3f4c513e4184970a0b838a56634f0e9268 /drivers/clk
parentMerge branch 'clk-next-shmobile' into clk-next (diff)
downloadlinux-5d2043fbe4ddc6cc16ba71b49c2c13f4cb2fe932.tar.xz
linux-5d2043fbe4ddc6cc16ba71b49c2c13f4cb2fe932.zip
clk: composite: pass mux_hw into determine_rate
The composite clock's .determine_rate implementation can call the underyling .determine_rate callback corresponding to rate_hw or the underlying .determine_rate callback corresponding to mux_hw. In both cases we pass in rate_hw, which is wrong. Fixed by passing mux_hw into the correct callback. Reported-by: Lemon Dai <dailemon.gl@gmail.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/clk-composite.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/clk/clk-composite.c b/drivers/clk/clk-composite.c
index 753d0b784762..57a078e06efe 100644
--- a/drivers/clk/clk-composite.c
+++ b/drivers/clk/clk-composite.c
@@ -71,7 +71,7 @@ static long clk_composite_determine_rate(struct clk_hw *hw, unsigned long rate,
best_parent_p);
} else if (mux_hw && mux_ops && mux_ops->determine_rate) {
mux_hw->clk = hw->clk;
- return mux_ops->determine_rate(rate_hw, rate, best_parent_rate,
+ return mux_ops->determine_rate(mux_hw, rate, best_parent_rate,
best_parent_p);
} else {
pr_err("clk: clk_composite_determine_rate function called, but no mux or rate callback set!\n");