summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMoritz Fischer <mdf@kernel.org>2017-04-24 15:05:12 -0700
committerAlexandre Belloni <alexandre.belloni@free-electrons.com>2017-05-04 14:46:25 +0200
commit538c08f4c89580fc644e2bc64e0a4b86c925da4e (patch)
treedc438ec168a2b840151df09f631d8ab06b753d2b
parent453d0744f6c6ca3f9749b8c57c2e85b5b9f52514 (diff)
downloadlinux-538c08f4c89580fc644e2bc64e0a4b86c925da4e.tar.bz2
rtc: ds1374: wdt: Fix stop/start ioctl always returning -EINVAL
The WDIOC_SETOPTIONS case in the watchdog ioctl would alwayss falls through to the -EINVAL case. This is wrong since thew watchdog does actually get stopped or started correctly. Fixes: 920f91e50c5b ("drivers/rtc/rtc-ds1374.c: add watchdog support") Signed-off-by: Moritz Fischer <mdf@kernel.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
-rw-r--r--drivers/rtc/rtc-ds1374.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/rtc/rtc-ds1374.c b/drivers/rtc/rtc-ds1374.c
index 2a8b5b3e429b..38a2e9e684df 100644
--- a/drivers/rtc/rtc-ds1374.c
+++ b/drivers/rtc/rtc-ds1374.c
@@ -546,14 +546,15 @@ static long ds1374_wdt_ioctl(struct file *file, unsigned int cmd,
if (options & WDIOS_DISABLECARD) {
pr_info("disable watchdog\n");
ds1374_wdt_disable();
+ return 0;
}
if (options & WDIOS_ENABLECARD) {
pr_info("enable watchdog\n");
ds1374_wdt_settimeout(wdt_margin);
ds1374_wdt_ping();
+ return 0;
}
-
return -EINVAL;
}
return -ENOTTY;