diff options
| author | Wim Van Sebroeck <wim@iguana.be> | 2011-07-22 14:56:38 -0400 |
|---|---|---|
| committer | Wim Van Sebroeck <wim@iguana.be> | 2011-07-28 04:01:05 -0400 |
| commit | 2fa03560ab3a6dd83cad9bfd5692179fc2ceabb3 (patch) | |
| tree | b208649368917b6c8d16c5cc737b2b83e906d074 /include/linux | |
| parent | 43316044d4f64da008d6aca7d4b60771b9a24eb8 (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/linux')
| -rw-r--r-- | include/linux/watchdog.h | 4 |
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 { | |||
| 99 | struct watchdog_device { | 102 | struct 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 */ |
