[PATCH v2 0/2] introduce watchdog_dev_suspend/resume

From: Grzegorz Jaszczyk
Date: Fri Jun 18 2021 - 15:51:03 EST

Hi All,

The following is a v2 version of the series [1] that fixes system hang which
occurs when the ping worker fires after wdog suspend and before wdog resume.
This happens because the ping worker can issue low-level ping while the wdog clk
was disabled by the suspend routine (accessing hw wdog registers while they are
not fed by the clk).

To overcome this issue two patches were introduced. Patch #1 introduces pm
notifier in the watchdog core which will call watchdog_dev_suspend/resume and
actually cancel ping worker during suspend and restore it back, if needed,
during resume.

Patch #2 introduces relevant changes to imx2_wdt driver and notifies wdog core
to stop ping worker on suspend.

[1] https://lkml.org/lkml/2021/6/15/542

Best regards,

Grzegorz Jaszczyk (2):
watchdog: introduce watchdog_dev_suspend/resume
watchdog: imx2_wdg: notify wdog core to stop ping worker on suspend

drivers/watchdog/imx2_wdt.c | 1 +
drivers/watchdog/watchdog_core.c | 37 +++++++++++++++++++++++++
drivers/watchdog/watchdog_dev.c | 47 ++++++++++++++++++++++++++++++++
include/linux/watchdog.h | 10 +++++++
4 files changed, 95 insertions(+)