clocksource/drivers/timer-atmel-tcb: Allow selecting first divider
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 10 Jul 2020 23:08:12 +0000 (01:08 +0200)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Sat, 11 Jul 2020 16:58:18 +0000 (18:58 +0200)
The divider selection algorithm never allowed to get index 0. It was also
continuing to look for dividers, trying to find the slow clock selection.
This is not necessary anymore.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20200710230813.1005150-9-alexandre.belloni@bootlin.com
drivers/clocksource/timer-atmel-tcb.c

index 7a6474acc774b6288f57e954c5b97e01be1faeed..7fea134650fcf447eed95bfa1228d79f3a072480 100644 (file)
@@ -432,10 +432,8 @@ static int __init tcb_clksrc_init(struct device_node *node)
 
                tmp = rate / divisor;
                pr_debug("TC: %u / %-3u [%d] --> %u\n", rate, divisor, i, tmp);
-               if (best_divisor_idx > 0) {
-                       if (tmp < 5 * 1000 * 1000)
-                               continue;
-               }
+               if ((best_divisor_idx >= 0) && (tmp < 5 * 1000 * 1000))
+                       break;
                divided_rate = tmp;
                best_divisor_idx = i;
        }