mbox series

[v2,0/2] introduce watchdog_dev_suspend/resume

Message ID 20210618195033.3209598-1-grzegorz.jaszczyk@linaro.org
Headers show
Series introduce watchdog_dev_suspend/resume | expand

Message

Grzegorz Jaszczyk June 18, 2021, 7:50 p.m. UTC
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

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(+)

-- 
2.29.0

Comments

Grzegorz Jaszczyk July 21, 2021, 7:51 a.m. UTC | #1
On Fri, 18 Jun 2021 at 21:50, Grzegorz Jaszczyk
<grzegorz.jaszczyk@linaro.org> wrote:
>

> 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

>

> 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(+)

>

> --

> 2.29.0

>


Hi,

Gentle reminder about this patch-set. Both patches were reviewed by
Guenter Roeck and are on the list for some time, I would be happy if
we could get them applied.

Thank you in advance,
Grzegorz