clk: sunxi-ng: multiplier: Fix fractional mode
authorJernej Škrabec <jernej.skrabec@siol.net>
Sun, 30 Jul 2017 16:41:48 +0000 (18:41 +0200)
committerChen-Yu Tsai <wens@csie.org>
Tue, 1 Aug 2017 02:18:22 +0000 (10:18 +0800)
Driver for multiplier clock is missing a call to
ccu_frac_helper_enable() when fractional mode is selected.

Add a call to ccu_frac_helper_enable().

Fixes: d77e8135b340 ("clk: sunxi-ng: multiplier: Add fractional support")
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
drivers/clk/sunxi-ng/ccu_mult.c

index 20d0300..ee5e962 100644 (file)
@@ -111,10 +111,13 @@ static int ccu_mult_set_rate(struct clk_hw *hw, unsigned long rate,
        unsigned long flags;
        u32 reg;
 
-       if (ccu_frac_helper_has_rate(&cm->common, &cm->frac, rate))
+       if (ccu_frac_helper_has_rate(&cm->common, &cm->frac, rate)) {
+               ccu_frac_helper_enable(&cm->common, &cm->frac);
+
                return ccu_frac_helper_set_rate(&cm->common, &cm->frac, rate);
-       else
+       } else {
                ccu_frac_helper_disable(&cm->common, &cm->frac);
+       }
 
        parent_rate = ccu_mux_helper_apply_prediv(&cm->common, &cm->mux, -1,
                                                  parent_rate);