summaryrefslogtreecommitdiff
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorShruthi Sanil <shruthi.sanil@intel.com>2021-05-17 20:49:47 +0300
committerWim Van Sebroeck <wim@linux-watchdog.org>2021-06-21 09:48:54 +0300
commit75f6c56dfeec92c53e09a72896547888ac9a27d7 (patch)
treef6a98af497e084ff29971a594bed2558a0611b4f /drivers/watchdog
parent0f7bfaf10c0abc979220442bae2af4f1f869c41e (diff)
downloadlinux-75f6c56dfeec92c53e09a72896547888ac9a27d7.tar.xz
watchdog: keembay: Update pretimeout to zero in the TH ISR
The pretimeout has to be updated to zero during the ISR of the ThresHold interrupt. Else the TH interrupt would be triggerred for every tick until the timeout. Fixes: fa0f8d51e90d ("watchdog: Add watchdog driver for Intel Keembay Soc") Reviewed-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Tested-by: Kris Pan <kris.pan@intel.com> Signed-off-by: Shruthi Sanil <shruthi.sanil@intel.com> Link: https://lore.kernel.org/r/20210517174953.19404-4-shruthi.sanil@intel.com Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/keembay_wdt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/watchdog/keembay_wdt.c b/drivers/watchdog/keembay_wdt.c
index b2afeb4a60e3..6053416b8d3d 100644
--- a/drivers/watchdog/keembay_wdt.c
+++ b/drivers/watchdog/keembay_wdt.c
@@ -154,6 +154,8 @@ static irqreturn_t keembay_wdt_th_isr(int irq, void *dev_id)
struct keembay_wdt *wdt = dev_id;
struct arm_smccc_res res;
+ keembay_wdt_set_pretimeout(&wdt->wdd, 0x0);
+
arm_smccc_smc(WDT_ISR_CLEAR, WDT_ISR_MASK, 0, 0, 0, 0, 0, 0, &res);
dev_crit(wdt->wdd.parent, "Intel Keem Bay non-sec wdt pre-timeout.\n");
watchdog_notify_pretimeout(&wdt->wdd);