ARM: at91: PIT: Use DIV_ROUND_CLOSEST to compute the cycles
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Tue, 1 Jul 2014 09:33:16 +0000 (11:33 +0200)
committerNicolas Ferre <nicolas.ferre@atmel.com>
Tue, 2 Sep 2014 16:52:22 +0000 (18:52 +0200)
Until now, the pit_cycle computation was dividing the rate by HZ, rounding to
the closest integer, but without using the appropriate macro.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Boris BREZILLON <boris.brezillon@free-electrons.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
arch/arm/mach-at91/at91sam926x_time.c

index fd3170b65fbb8b976171c106cb2bdd3486f90f0c..2e6f1a37ab90babaf7b25204f1ad7a45325c055d 100644 (file)
@@ -252,7 +252,7 @@ void __init at91sam926x_pit_init(void)
        if (IS_ERR(mck))
                panic("AT91: PIT: Unable to get mck clk\n");
        pit_rate = clk_get_rate(mck) / 16;
-       pit_cycle = (pit_rate + HZ/2) / HZ;
+       pit_cycle = DIV_ROUND_CLOSEST(pit_rate, HZ);
        WARN_ON(((pit_cycle - 1) & ~AT91_PIT_PIV) != 0);
 
        /* Initialize and enable the timer */