You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
From 5f5c9858af167f842ee8df053920b98387a71af1 Mon Sep 17 00:00:00 2001
|
|
|
|
From: John Crispin <john@phrozen.org>
|
|
|
|
Date: Mon, 5 Mar 2018 11:41:25 +0100
|
|
|
|
Subject: [PATCH 02/27] watchdog: ath79: fix maximum timeout
|
|
|
|
|
|
|
|
If the userland tries to set a timeout higher than the max_timeout,
|
|
|
|
then we should fallback to max_timeout.
|
|
|
|
|
|
|
|
Signed-off-by: John Crispin <john@phrozen.org>
|
|
|
|
---
|
|
|
|
drivers/watchdog/ath79_wdt.c | 8 ++++++--
|
|
|
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
--- a/drivers/watchdog/ath79_wdt.c
|
|
|
|
+++ b/drivers/watchdog/ath79_wdt.c
|
|
|
|
@@ -115,10 +115,14 @@ static inline void ath79_wdt_disable(voi
|
|
|
|
|
|
|
|
static int ath79_wdt_set_timeout(int val)
|
|
|
|
{
|
|
|
|
- if (val < 1 || val > max_timeout)
|
|
|
|
+ if (val < 1)
|
|
|
|
return -EINVAL;
|
|
|
|
|
|
|
|
- timeout = val;
|
|
|
|
+ if (val > max_timeout)
|
|
|
|
+ timeout = max_timeout;
|
|
|
|
+ else
|
|
|
|
+ timeout = val;
|
|
|
|
+
|
|
|
|
ath79_wdt_keepalive();
|
|
|
|
|
|
|
|
return 0;
|