Message ID | 20210512084724.14634-4-shruthi.sanil@intel.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Intel Keem Bay WDT bug fixes | expand |
On Wed, May 12, 2021 at 02:17:17PM +0530, shruthi.sanil@intel.com wrote: > From: Shruthi Sanil <shruthi.sanil@intel.com> > > 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: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Tested-by: Kris Pan <kris.pan@intel.com> > Signed-off-by: Shruthi Sanil <shruthi.sanil@intel.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> > --- > drivers/watchdog/keembay_wdt.c | 2 ++ > 1 file changed, 2 insertions(+) > > 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); > -- > 2.17.1 >
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);