Skip to content

Commit

Permalink
imx/clk-pllv1: fix wrong do_div() usage
Browse files Browse the repository at this point in the history
do_div() is meant to be used with an unsigned dividend.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
  • Loading branch information
Nicolas Pitre authored and Stephen Boyd committed Nov 30, 2015
1 parent c6bb9ce commit 741e96e
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions drivers/clk/imx/clk-pllv1.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ static unsigned long clk_pllv1_recalc_rate(struct clk_hw *hw,
unsigned long parent_rate)
{
struct clk_pllv1 *pll = to_clk_pllv1(hw);
long long ll;
unsigned long long ull;
int mfn_abs;
unsigned int mfi, mfn, mfd, pd;
u32 reg;
Expand Down Expand Up @@ -94,16 +94,16 @@ static unsigned long clk_pllv1_recalc_rate(struct clk_hw *hw,
rate = parent_rate * 2;
rate /= pd + 1;

ll = (unsigned long long)rate * mfn_abs;
ull = (unsigned long long)rate * mfn_abs;

do_div(ll, mfd + 1);
do_div(ull, mfd + 1);

if (mfn_is_negative(pll, mfn))
ll = -ll;
ull = (rate * mfi) - ull;
else
ull = (rate * mfi) + ull;

ll = (rate * mfi) + ll;

return ll;
return ull;
}

static struct clk_ops clk_pllv1_ops = {
Expand Down

0 comments on commit 741e96e

Please sign in to comment.