[PATCH 0/2] introduce watchdog_dev_suspend/resume

From: Grzegorz Jaszczyk
Date: Tue Jun 15 2021 - 08:39:19 EST


Hi All,

This patch-set 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 provides
watchdog_dev_suspend/resume function, which can be used in wdog drivers. First
function allows to cancel watchdog ping worker during suspend, preventing
watchdog_dev from issuing low-level ping and second one restores ping worker if
needed.

Patch #2 introduces relevant changes to imx2_wdt driver and takes advantage of
just introduced routines.

Grzegorz Jaszczyk (2):
watchdog: introduce watchdog_dev_suspend/resume
watchdog: imx2_wdg: notify wdog subsystem about wdog suspend/resume

drivers/watchdog/imx2_wdt.c | 20 ++++++++++----
drivers/watchdog/watchdog_dev.c | 49 +++++++++++++++++++++++++++++++++
include/linux/watchdog.h | 2 ++
3 files changed, 66 insertions(+), 5 deletions(-)

--
2.29.0