4.19-stable review patch. If anyone has any objections, please let me know.
------------------ From: Ronald Wahl <rw...@gmx.de> commit 0f5cb0e6225cae2f029944cb8c74617aab6ddd49 upstream. Commit a982e45dc150 ("clk: at91: PLL recalc_rate() now using cached MUL and DIV values") removed a check that prevents a division by zero. This now causes a stacktrace when booting the kernel on a at91 platform if the PLL DIV register contains zero. This commit reintroduces this check. Fixes: a982e45dc150 ("clk: at91: PLL recalc_rate() now using cached...") Cc: <sta...@vger.kernel.org> Signed-off-by: Ronald Wahl <rw...@gmx.de> Acked-by: Ludovic Desroches <ludovic.desroc...@microchip.com> Signed-off-by: Stephen Boyd <sb...@kernel.org> Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- drivers/clk/at91/clk-pll.c | 3 +++ 1 file changed, 3 insertions(+) --- a/drivers/clk/at91/clk-pll.c +++ b/drivers/clk/at91/clk-pll.c @@ -133,6 +133,9 @@ static unsigned long clk_pll_recalc_rate { struct clk_pll *pll = to_clk_pll(hw); + if (!pll->div || !pll->mul) + return 0; + return (parent_rate / pll->div) * (pll->mul + 1); }