We should never return more time left than there actually is. So, switch to a plain divider instead of DIV_ROUND_CLOSEST. Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> --- This is similar to a patch for the renesas-rwdt[1]. I think it makes sense to remove this pattern from the whole subsystem, if we can agree on the behaviour stated in the patch description. So, this is the other driver using DIV_ROUND_CLOSEST. Note: This driver and the lpc18xx_wdt.c extremly likely drive the same IP core. They would ideally be merged. [1] https://patchwork.kernel.org/patch/9845459/ drivers/watchdog/asm9260_wdt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/watchdog/asm9260_wdt.c b/drivers/watchdog/asm9260_wdt.c index 53da001f0838ee..f40dd71c904bef 100644 --- a/drivers/watchdog/asm9260_wdt.c +++ b/drivers/watchdog/asm9260_wdt.c @@ -82,7 +82,7 @@ static unsigned int asm9260_wdt_gettimeleft(struct watchdog_device *wdd) counter = ioread32(priv->iobase + HW_WDTV); - return DIV_ROUND_CLOSEST(counter, priv->wdt_freq); + return counter / priv->wdt_freq; } static int asm9260_wdt_updatetimeout(struct watchdog_device *wdd) -- 2.11.0