Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux...
[linux-2.6-microblaze.git] / drivers / clk / clk-divider.c
index 7d62dc3..00e035b 100644 (file)
@@ -303,9 +303,8 @@ static int clk_divider_bestdiv(struct clk_hw *hw, unsigned long rate,
         */
        maxdiv = min(ULONG_MAX / rate, maxdiv);
 
-       for (i = 1; i <= maxdiv; i = _next_div(table, i, flags)) {
-               if (!_is_valid_div(table, i, flags))
-                       continue;
+       for (i = _next_div(table, 0, flags); i <= maxdiv;
+                                            i = _next_div(table, i, flags)) {
                if (rate * i == parent_rate_saved) {
                        /*
                         * It's the most ideal case if the requested rate can be