From: Hans de Goede Date: Fri, 11 May 2012 10:00:27 +0000 (+0200) Subject: watchdog: s3c2410_wdt: Set timeout to actually achieved timeout X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5f2430f554aabb4810b2a6f906be571ac1241d96;p=openwrt%2Fstaging%2Fblogic.git watchdog: s3c2410_wdt: Set timeout to actually achieved timeout While rebasing my "watchdog_dev: Let the driver update the timeout field on set_timeout success" patch (before I noticed it was already picked up by Wim), I noticed that the s3c2410_wdt driver may not always have a 1 second resolution, this patch changes s3c2410wdt_set_heartbeat to update the timeout to the actually achieved timeout. Signed-off-by: Hans de Goede Signed-off-by: Wim Van Sebroeck --- diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c index d277cd614daf..200ece5e2a22 100644 --- a/drivers/watchdog/s3c2410_wdt.c +++ b/drivers/watchdog/s3c2410_wdt.c @@ -202,7 +202,7 @@ static int s3c2410wdt_set_heartbeat(struct watchdog_device *wdd, unsigned timeou writel(count, wdt_base + S3C2410_WTDAT); writel(wtcon, wdt_base + S3C2410_WTCON); - wdd->timeout = timeout; + wdd->timeout = (count * divisor) / freq; return 0; }