clk: at91: fix update bit maps on CFG_MOR write
authorEugen Hristev <eugen.hristev@microchip.com>
Mon, 9 Sep 2019 15:30:31 +0000 (15:30 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2019 14:35:19 +0000 (15:35 +0100)
commit 263eaf8f172d9f44e15d6aca85fe40ec18d2c477 upstream.

The regmap update bits call was not selecting the proper mask, considering
the bits which was updating.
Update the mask from call to also include OSCBYPASS.
Removed MOSCEN which was not updated.

Fixes: 1bdf02326b71 ("clk: at91: make use of syscon/regmap internally")
Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
Link: https://lkml.kernel.org/r/1568042692-11784-1-git-send-email-eugen.hristev@microchip.com
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clk/at91/clk-main.c

index fb5c14a..90988e7 100644 (file)
@@ -162,7 +162,7 @@ at91_clk_register_main_osc(struct regmap *regmap,
        if (bypass)
                regmap_update_bits(regmap,
                                   AT91_CKGR_MOR, MOR_KEY_MASK |
-                                  AT91_PMC_MOSCEN,
+                                  AT91_PMC_OSCBYPASS,
                                   AT91_PMC_OSCBYPASS | AT91_PMC_KEY);
 
        hw = &osc->hw;