aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorWim Van Sebroeck <wim@iguana.be>2005-08-19 17:31:41 -0400
committerWim Van Sebroeck <wim@iguana.be>2005-09-11 16:11:40 -0400
commit266aa1c4b3d004123d330eb412cc26a3d10f9029 (patch)
tree823db05ca5e63f0787842741d4ff221f13152c21 /drivers/char
parentcd7b80079b120406de902ee1eaa2dbdaa867dada (diff)
[WATCHDOG] driver-for-ibm-automatic-server-restart-watchdog-fix2.patch
The device/watchdog has a fixed timeout/heartbeat. So we don't support the WDIOC_SETTIMEOUT ioctl call and we also may not set the WDIOF_SETTIMEOUT flag. Cc: Andrey Panin <pazke@donpac.ru> Cc: Andrew Morton <akpm@osdl.org> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/watchdog/ibmasr.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/char/watchdog/ibmasr.c b/drivers/char/watchdog/ibmasr.c
index 4f90015be7dd..294c474ae485 100644
--- a/drivers/char/watchdog/ibmasr.c
+++ b/drivers/char/watchdog/ibmasr.c
@@ -246,7 +246,7 @@ static int asr_ioctl(struct inode *inode, struct file *file,
246 unsigned int cmd, unsigned long arg) 246 unsigned int cmd, unsigned long arg)
247{ 247{
248 static const struct watchdog_info ident = { 248 static const struct watchdog_info ident = {
249 .options = WDIOF_KEEPALIVEPING | WDIOF_SETTIMEOUT | 249 .options = WDIOF_KEEPALIVEPING |
250 WDIOF_MAGICCLOSE, 250 WDIOF_MAGICCLOSE,
251 .identity = "IBM ASR" 251 .identity = "IBM ASR"
252 }; 252 };
@@ -268,14 +268,9 @@ static int asr_ioctl(struct inode *inode, struct file *file,
268 return 0; 268 return 0;
269 269
270 /* 270 /*
271 * The hardware has a fixed timeout value, so WDIOC_SETTIMEOUT 271 * The hardware has a fixed timeout value, so no WDIOC_SETTIMEOUT
272 * is a noop and WDIOC_GETTIMEOUT always returns 256. 272 * and WDIOC_GETTIMEOUT always returns 256.
273 */ 273 */
274 case WDIOC_SETTIMEOUT:
275 if (get_user(heartbeat, p))
276 return -EFAULT;
277 /* Fall */
278
279 case WDIOC_GETTIMEOUT: 274 case WDIOC_GETTIMEOUT:
280 heartbeat = 256; 275 heartbeat = 256;
281 return put_user(heartbeat, p); 276 return put_user(heartbeat, p);