]> git.baikalelectronics.ru Git - kernel.git/commit
clk: divider: Fix table round up function
authorMaxime COQUELIN <maxime.coquelin@st.com>
Wed, 7 May 2014 16:48:52 +0000 (18:48 +0200)
committerMike Turquette <mturquette@linaro.org>
Fri, 23 May 2014 21:27:31 +0000 (14:27 -0700)
commitb50cfcf4e085ffb3e78cb3f8233c8ab47101c7ac
treee5d0d7b02ee36e6a2ceeb7d20a9aedef2856c087
parent9111474d1a8872430728d0b3391f839572c0b619
clk: divider: Fix table round up function

Commit 1d9fe6b97 ("clk: divider: Fix best div calculation for power-of-two and
table dividers") introduces a regression in its _table_round_up function.

When the divider passed to this function is greater than the max divider
available in the table, this function returns table's max divider.
Problem is that it causes an infinite loop in clk_divider_bestdiv() because
_next_div() will never return a value greater than maxdiv.

Instead of returning table's max divider, this patch returns INT_MAX.

Reported-by: Fabio Estevam <festevam@gmail.com>
Reported-by: Shawn Guo <shawn.guo@freescale.com>
Tested-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
drivers/clk/clk-divider.c