clk: at91: Fix division by zero in PLL recalc_rate()
commit0f5cb0e622
upstream. Commita982e45dc1
("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:a982e45dc1
("clk: at91: PLL recalc_rate() now using cached...") Cc: <stable@vger.kernel.org> Signed-off-by: Ronald Wahl <rwahl@gmx.de> Acked-by: Ludovic Desroches <ludovic.desroches@microchip.com> Signed-off-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
f074414aff
Коммит
abe960b761
|
@ -133,6 +133,9 @@ static unsigned long clk_pll_recalc_rate(struct clk_hw *hw,
|
||||||
{
|
{
|
||||||
struct clk_pll *pll = to_clk_pll(hw);
|
struct clk_pll *pll = to_clk_pll(hw);
|
||||||
|
|
||||||
|
if (!pll->div || !pll->mul)
|
||||||
|
return 0;
|
||||||
|
|
||||||
return (parent_rate / pll->div) * (pll->mul + 1);
|
return (parent_rate / pll->div) * (pll->mul + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче