aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorWim Van Sebroeck <wim@iguana.be>2011-07-22 14:56:38 -0400
committerWim Van Sebroeck <wim@iguana.be>2011-07-28 04:01:05 -0400
commit2fa03560ab3a6dd83cad9bfd5692179fc2ceabb3 (patch)
treeb208649368917b6c8d16c5cc737b2b83e906d074 /include
parent43316044d4f64da008d6aca7d4b60771b9a24eb8 (diff)
watchdog: WatchDog Timer Driver Core - Add basic ioctl functionality
This part add's the basic ioctl functionality to the WatchDog Timer Driver Core framework. The supported ioctl call's are: WDIOC_GETSUPPORT WDIOC_GETSTATUS WDIOC_GETBOOTSTATUS 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 'include')
-rw-r--r--include/linux/watchdog.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/watchdog.h b/include/linux/watchdog.h
index 5ab31bfd2906..29ff80807dd4 100644
--- a/include/linux/watchdog.h
+++ b/include/linux/watchdog.h
@@ -68,6 +68,7 @@ struct watchdog_device;
68 * @start: The routine for starting the watchdog device. 68 * @start: The routine for starting the watchdog device.
69 * @stop: The routine for stopping the watchdog device. 69 * @stop: The routine for stopping the watchdog device.
70 * @ping: The routine that sends a keepalive ping to the watchdog device. 70 * @ping: The routine that sends a keepalive ping to the watchdog device.
71 * @status: The routine that shows the status of the watchdog device.
71 * 72 *
72 * The watchdog_ops structure contains a list of low-level operations 73 * The watchdog_ops structure contains a list of low-level operations
73 * that control a watchdog device. It also contains the module that owns 74 * that control a watchdog device. It also contains the module that owns
@@ -81,12 +82,14 @@ struct watchdog_ops {
81 int (*stop)(struct watchdog_device *); 82 int (*stop)(struct watchdog_device *);
82 /* optional operations */ 83 /* optional operations */
83 int (*ping)(struct watchdog_device *); 84 int (*ping)(struct watchdog_device *);
85 unsigned int (*status)(struct watchdog_device *);
84}; 86};
85 87
86/** struct watchdog_device - The structure that defines a watchdog device 88/** struct watchdog_device - The structure that defines a watchdog device
87 * 89 *
88 * @info: Pointer to a watchdog_info structure. 90 * @info: Pointer to a watchdog_info structure.
89 * @ops: Pointer to the list of watchdog operations. 91 * @ops: Pointer to the list of watchdog operations.
92 * @bootstatus: Status of the watchdog device at boot.
90 * @driver-data:Pointer to the drivers private data. 93 * @driver-data:Pointer to the drivers private data.
91 * @status: Field that contains the devices internal status bits. 94 * @status: Field that contains the devices internal status bits.
92 * 95 *
@@ -99,6 +102,7 @@ struct watchdog_ops {
99struct watchdog_device { 102struct watchdog_device {
100 const struct watchdog_info *info; 103 const struct watchdog_info *info;
101 const struct watchdog_ops *ops; 104 const struct watchdog_ops *ops;
105 unsigned int bootstatus;
102 void *driver_data; 106 void *driver_data;
103 unsigned long status; 107 unsigned long status;
104/* Bit numbers for status flags */ 108/* Bit numbers for status flags */