summaryrefslogtreecommitdiff
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorWim Van Sebroeck <wim@iguana.be>2011-07-22 18:59:49 (GMT)
committerWim Van Sebroeck <wim@iguana.be>2011-07-28 08:01:16 (GMT)
commit78d88fc01202b088573c962e2885556a5e99bf74 (patch)
tree8f5650e80988752d144c4575ae4d2b4e846e2aa5 /drivers/watchdog
parent7e192b9c4234d29bdc20ac8d0a67edf7624b4206 (diff)
downloadlinux-fsl-qoriq-78d88fc01202b088573c962e2885556a5e99bf74.tar.xz
watchdog: WatchDog Timer Driver Core - Add ioctl call
Add support for extra ioctl calls by adding a ioctl watchdog operation. This operation will be called before we do our own handling of ioctl commands. This way we can override the internal ioctl command handling and we can also add extra ioctl commands. The ioctl watchdog operation should return the appropriate error codes or -ENOIOCTLCMD if the ioctl command should be handled through the internal ioctl handling of the framework. Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/watchdog_dev.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
index ac20f92..e7134a5 100644
--- a/drivers/watchdog/watchdog_dev.c
+++ b/drivers/watchdog/watchdog_dev.c
@@ -180,6 +180,12 @@ static long watchdog_ioctl(struct file *file, unsigned int cmd,
unsigned int val;
int err;
+ if (wdd->ops->ioctl) {
+ err = wdd->ops->ioctl(wdd, cmd, arg);
+ if (err != -ENOIOCTLCMD)
+ return err;
+ }
+
switch (cmd) {
case WDIOC_GETSUPPORT:
return copy_to_user(argp, wdd->info,