diff options
author | Boris Brezillon <boris.brezillon@free-electrons.com> | 2016-07-18 03:49:12 -0400 |
---|---|---|
committer | Michael Turquette <mturquette@baylibre.com> | 2016-07-18 20:45:41 -0400 |
commit | f96423f483b1a7854270335b319e8d1cdd6f3585 (patch) | |
tree | 15cbcba2a4262a9c78953ce9a2cb9bd8322bedfc | |
parent | 9d6928639134cff896a92f8ff7fad14370e88d3c (diff) |
clk: at91: fix clk_programmable_set_parent()
Since commit 1bdf02326b71e ("clk: at91: make use of syscon/regmap
internally"), clk_programmable_set_parent() is always selecting the
first parent (AKA slow_clk), no matter what's passed in the 'index'
parameter.
Fix that by initializing the pckr variable to the index value.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Reported-by: Hans Verkuil <hans.verkuil@cisco.com>
Fixes: 1bdf02326b71e ("clk: at91: make use of syscon/regmap internally")
Cc: <stable@vger.kernel.org>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
Link: lkml.kernel.org/r/1468828152-18389-1-git-send-email-boris.brezillon@free-electrons.com
-rw-r--r-- | drivers/clk/at91/clk-programmable.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/clk/at91/clk-programmable.c b/drivers/clk/at91/clk-programmable.c index 10f846cc8db1..25d5906640c3 100644 --- a/drivers/clk/at91/clk-programmable.c +++ b/drivers/clk/at91/clk-programmable.c | |||
@@ -99,7 +99,7 @@ static int clk_programmable_set_parent(struct clk_hw *hw, u8 index) | |||
99 | struct clk_programmable *prog = to_clk_programmable(hw); | 99 | struct clk_programmable *prog = to_clk_programmable(hw); |
100 | const struct clk_programmable_layout *layout = prog->layout; | 100 | const struct clk_programmable_layout *layout = prog->layout; |
101 | unsigned int mask = layout->css_mask; | 101 | unsigned int mask = layout->css_mask; |
102 | unsigned int pckr = 0; | 102 | unsigned int pckr = index; |
103 | 103 | ||
104 | if (layout->have_slck_mck) | 104 | if (layout->have_slck_mck) |
105 | mask |= AT91_PMC_CSSMCK_MCK; | 105 | mask |= AT91_PMC_CSSMCK_MCK; |