Message ID | 20231007082125.4699-1-xingtong_wu@163.com |
---|---|
State | New |
Headers | show |
Series | watchdog: wdat_wdt: Add timeout value as a param in ping method | expand |
On Sat, Oct 07, 2023 at 04:21:25PM +0800, Xing Tong Wu wrote: > From: Xing Tong Wu <xingtong.wu@siemens.com> > > According to the WDAT spec that states about WATCHDOG_ACTION_SET_COUNTDOWN_PERIOD: > "This action is required if WATCHDOG_ACTION_RESET does not explicitly write a new > countdown value to a register during a reset." > And that implies, WATCHDOG_ACTION_RESET may write a countdown value, thus may come > with a WATCHDOG_INSTRUCTION_WRITE_COUNTDOWN, thus need the timeout value as parameter > or would otherwise write 0. > The watchdog for SIONCT6126 need a entry WATCHDOG_INSTRUCTION_WRITE_COUNTDOWN for > WATCHDOG_ACTION_RESET action, I send this patch to support it. > > Signed-off-by: Xing Tong Wu <xingtong.wu@siemens.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> > --- > drivers/watchdog/wdat_wdt.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/watchdog/wdat_wdt.c b/drivers/watchdog/wdat_wdt.c > index 0ba99bed59fc..650fdc7996e1 100644 > --- a/drivers/watchdog/wdat_wdt.c > +++ b/drivers/watchdog/wdat_wdt.c > @@ -269,7 +269,7 @@ static int wdat_wdt_stop(struct watchdog_device *wdd) > > static int wdat_wdt_ping(struct watchdog_device *wdd) > { > - return wdat_wdt_run_action(to_wdat_wdt(wdd), ACPI_WDAT_RESET, 0, NULL); > + return wdat_wdt_run_action(to_wdat_wdt(wdd), ACPI_WDAT_RESET, wdd->timeout, NULL); > } > > static int wdat_wdt_set_timeout(struct watchdog_device *wdd, > -- > 2.25.1 >
diff --git a/drivers/watchdog/wdat_wdt.c b/drivers/watchdog/wdat_wdt.c index 0ba99bed59fc..650fdc7996e1 100644 --- a/drivers/watchdog/wdat_wdt.c +++ b/drivers/watchdog/wdat_wdt.c @@ -269,7 +269,7 @@ static int wdat_wdt_stop(struct watchdog_device *wdd) static int wdat_wdt_ping(struct watchdog_device *wdd) { - return wdat_wdt_run_action(to_wdat_wdt(wdd), ACPI_WDAT_RESET, 0, NULL); + return wdat_wdt_run_action(to_wdat_wdt(wdd), ACPI_WDAT_RESET, wdd->timeout, NULL); } static int wdat_wdt_set_timeout(struct watchdog_device *wdd,