tegra/clk-divider: fix wrong do_div() usage
do_div() is meant to be used with an unsigned dividend. Signed-off-by: Nicolas Pitre <nico@linaro.org>
This commit is contained in:
@@ -32,7 +32,7 @@
|
|||||||
static int get_div(struct tegra_clk_frac_div *divider, unsigned long rate,
|
static int get_div(struct tegra_clk_frac_div *divider, unsigned long rate,
|
||||||
unsigned long parent_rate)
|
unsigned long parent_rate)
|
||||||
{
|
{
|
||||||
s64 divider_ux1 = parent_rate;
|
u64 divider_ux1 = parent_rate;
|
||||||
u8 flags = divider->flags;
|
u8 flags = divider->flags;
|
||||||
int mul;
|
int mul;
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ static int get_div(struct tegra_clk_frac_div *divider, unsigned long rate,
|
|||||||
|
|
||||||
divider_ux1 -= mul;
|
divider_ux1 -= mul;
|
||||||
|
|
||||||
if (divider_ux1 < 0)
|
if ((s64)divider_ux1 < 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (divider_ux1 > get_max_div(divider))
|
if (divider_ux1 > get_max_div(divider))
|
||||||
|
Reference in New Issue
Block a user