diff mbox

ti/clkt_dpll: fix wrong do_div() usage

Message ID alpine.LFD.2.20.1511032306560.630@knanqh.ubzr
State New
Headers show

Commit Message

Nicolas Pitre Nov. 4, 2015, 4:09 a.m. UTC
do_div() is meant to be used with an unsigned dividend.

Signed-off-by: Nicolas Pitre <nico@linaro.org>


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Tero Kristo Nov. 24, 2015, 9:35 a.m. UTC | #1
On 11/04/2015 06:09 AM, Nicolas Pitre wrote:
> do_div() is meant to be used with an unsigned dividend.

>

> Signed-off-by: Nicolas Pitre <nico@linaro.org>


Fixed Subject locally to format "clk: ti: %s".

Queued for 4.4-rc fixes, thanks.

-Tero

>

> diff --git a/drivers/clk/ti/clkt_dpll.c b/drivers/clk/ti/clkt_dpll.c

> index 9023ca9caf..b5cc6f66ae 100644

> --- a/drivers/clk/ti/clkt_dpll.c

> +++ b/drivers/clk/ti/clkt_dpll.c

> @@ -240,7 +240,7 @@ u8 omap2_init_dpll_parent(struct clk_hw *hw)

>    */

>   unsigned long omap2_get_dpll_rate(struct clk_hw_omap *clk)

>   {

> -	long long dpll_clk;

> +	u64 dpll_clk;

>   	u32 dpll_mult, dpll_div, v;

>   	struct dpll_data *dd;

>

> @@ -262,7 +262,7 @@ unsigned long omap2_get_dpll_rate(struct clk_hw_omap *clk)

>   	dpll_div = v & dd->div1_mask;

>   	dpll_div >>= __ffs(dd->div1_mask);

>

> -	dpll_clk = (long long)clk_get_rate(dd->clk_ref) * dpll_mult;

> +	dpll_clk = (u64)clk_get_rate(dd->clk_ref) * dpll_mult;

>   	do_div(dpll_clk, dpll_div + 1);

>

>   	return dpll_clk;

>


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/clk/ti/clkt_dpll.c b/drivers/clk/ti/clkt_dpll.c
index 9023ca9caf..b5cc6f66ae 100644
--- a/drivers/clk/ti/clkt_dpll.c
+++ b/drivers/clk/ti/clkt_dpll.c
@@ -240,7 +240,7 @@  u8 omap2_init_dpll_parent(struct clk_hw *hw)
  */
 unsigned long omap2_get_dpll_rate(struct clk_hw_omap *clk)
 {
-	long long dpll_clk;
+	u64 dpll_clk;
 	u32 dpll_mult, dpll_div, v;
 	struct dpll_data *dd;
 
@@ -262,7 +262,7 @@  unsigned long omap2_get_dpll_rate(struct clk_hw_omap *clk)
 	dpll_div = v & dd->div1_mask;
 	dpll_div >>= __ffs(dd->div1_mask);
 
-	dpll_clk = (long long)clk_get_rate(dd->clk_ref) * dpll_mult;
+	dpll_clk = (u64)clk_get_rate(dd->clk_ref) * dpll_mult;
 	do_div(dpll_clk, dpll_div + 1);
 
 	return dpll_clk;