PM / watchdog: iTCO: stop watchdog during system suspend
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 3 Apr 2015 13:25:04 +0000 (15:25 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 3 Apr 2015 13:25:04 +0000 (15:25 +0200)
commitf321c9cbf3bbf86f6e6153419eaf93ad085e3d74
tree8326d454c934c8833ecc7e365c2cb52f0f0616be
parent431d452af13720463dda498999b2e9a08729c03a
PM / watchdog: iTCO: stop watchdog during system suspend

If the target sleep state of the system is not an ACPI sleep state
(S1, S2 or S3), the TCO watchdog needs to be stopped during system
suspend, because it may not be possible to ping it any more after
timekeeping has been suspended (suspend-to-idle does that for
one example).

For this reason, provide ->suspend_noirq and ->resume_noirq
callbacks for the iTCO watchdog driver and use them to stop
and restart the watchdog during system suspend and resume,
respectively, if the system is not going to enter an ACPI
sleep state (in which case the watchdog will be stopped
by the platform firmware before the state is entered).

Reported-and-tested-by: Borun Fu <borun.fu@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
drivers/watchdog/iTCO_wdt.c