Re: [PATCH] clk: factor: calculate rate by do_div

2012-12-15 Thread Haojian Zhuang
On Sun, Dec 16, 2012 at 4:54 AM, Mike Turquette wrote: > On Sat, Dec 15, 2012 at 8:41 AM, Haojian Zhuang > wrote: >> On Tue, Dec 4, 2012 at 9:32 AM, Haojian Zhuang >> wrote: >>> On Mon, Dec 3, 2012 at 4:14 PM, Haojian Zhuang >>> wrote: clk->rate = parent->rate / div * mult The

Re: [PATCH] clk: factor: calculate rate by do_div

2012-12-15 Thread Mike Turquette
On Sat, Dec 15, 2012 at 8:41 AM, Haojian Zhuang wrote: > On Tue, Dec 4, 2012 at 9:32 AM, Haojian Zhuang > wrote: >> On Mon, Dec 3, 2012 at 4:14 PM, Haojian Zhuang >> wrote: >>> clk->rate = parent->rate / div * mult >>> >>> The formula is OK. But it may overflow while we do operate with >>> uns

Re: [PATCH] clk: factor: calculate rate by do_div

2012-12-15 Thread Haojian Zhuang
On Tue, Dec 4, 2012 at 9:32 AM, Haojian Zhuang wrote: > On Mon, Dec 3, 2012 at 4:14 PM, Haojian Zhuang > wrote: >> clk->rate = parent->rate / div * mult >> >> The formula is OK. But it may overflow while we do operate with >> unsigned long. So use do_div instead. >> >> Signed-off-by: Haojian Zhu

Re: [PATCH] clk: factor: calculate rate by do_div

2012-12-15 Thread Haojian Zhuang
On Tue, Dec 4, 2012 at 9:32 AM, Haojian Zhuang wrote: > On Mon, Dec 3, 2012 at 4:14 PM, Haojian Zhuang > wrote: >> clk->rate = parent->rate / div * mult >> >> The formula is OK. But it may overflow while we do operate with >> unsigned long. So use do_div instead. >> >> Signed-off-by: Haojian Zhu

Re: [PATCH] clk: factor: calculate rate by do_div

2012-12-03 Thread Haojian Zhuang
On Mon, Dec 3, 2012 at 4:14 PM, Haojian Zhuang wrote: > clk->rate = parent->rate / div * mult > > The formula is OK. But it may overflow while we do operate with > unsigned long. So use do_div instead. > > Signed-off-by: Haojian Zhuang > --- > drivers/clk/clk-fixed-factor.c |5 - > 1 fil

[PATCH] clk: factor: calculate rate by do_div

2012-12-03 Thread Haojian Zhuang
clk->rate = parent->rate / div * mult The formula is OK. But it may overflow while we do operate with unsigned long. So use do_div instead. Signed-off-by: Haojian Zhuang --- drivers/clk/clk-fixed-factor.c |5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/clk/clk