linux-stable/drivers/watchdog
Rafael J. Wysocki f321c9cbf3 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>
2015-04-03 15:25:04 +02:00
..
acquirewdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
advantechwdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
alim1535_wdt.c watchdog: remove DEFINE_PCI_DEVICE_TABLE macro 2014-01-28 19:07:07 +01:00
alim7101_wdt.c watchdog: alim7101: register restart handler with kernel restart handler 2014-09-26 00:00:32 -07:00
ar7_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
at32ap700x_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
at91rm9200_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
at91sam9_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
at91sam9_wdt.h
ath79_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
bcm47xx_wdt.c watchdog: bcm47xx_wdt.c: add restart handler support 2015-02-17 21:33:27 +01:00
bcm63xx_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
bcm2835_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
bcm_kona_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
bfin_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
booke_wdt.c powerpc: booke_wdt: Fix build error as a module 2014-10-20 20:44:22 +02:00
cadence_wdt.c watchdog: drop owner assignment from platform_drivers 2015-01-21 14:52:34 +01:00
coh901327_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
cpu5wdt.c watchdog: delete non-required instances of include <linux/init.h> 2014-03-31 13:22:45 +02:00
cpwd.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
da9052_wdt.c watchdog: Remove unnecessary OOM messages 2014-03-31 13:23:19 +02:00
da9055_wdt.c watchdog: Remove unnecessary OOM messages 2014-03-31 13:23:19 +02:00
da9063_wdt.c watchdog: da9063: Add restart handler support 2015-02-17 21:33:06 +01:00
davinci_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
diag288_wdt.c s390/watchdog: add support for LPAR operation (diag288) 2014-06-10 10:48:29 +02:00
dw_wdt.c watchdog: dw_wdt: Try to get a 30 second watchdog by default 2015-02-17 21:33:49 +01:00
ep93xx_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
eurotechwdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
f71808e_wdt.c
gef_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
geodewdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
gpio_wdt.c watchdog: gpio_wdt: Add "always_running" feature to GPIO watchdog 2015-02-17 21:33:22 +01:00
hpwdt.c watchdog: hpwdt: Fix initialization message in hpwdt.c 2015-02-17 21:32:10 +01:00
i6300esb.c watchdog: delete non-required instances of include <linux/init.h> 2014-03-31 13:22:45 +02:00
ib700wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
ibmasr.c watchdog: fix checkpatch warnings and error 2014-03-31 13:31:06 +02:00
ie6xx_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
imgpdc_wdt.c watchdog: ImgTec PDC Watchdog Timer Driver 2015-02-17 21:30:49 +01:00
imx2_wdt.c watchdog: imx2: Constify struct regmap_config and watchdog_ops 2015-02-17 21:31:06 +01:00
indydog.c watchdog: indydog: Simplify indydog_{start,stop} 2014-03-31 13:26:31 +02:00
intel-mid_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
intel_scu_watchdog.c watchdog: intel_scu_watchdog: Remove unused variable 2014-03-31 13:26:56 +02:00
intel_scu_watchdog.h
iop_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
it87_wdt.c watchdog: it87_wdt: add IT8783 ID 2015-02-17 21:32:08 +01:00
it8712f_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
iTCO_vendor.h
iTCO_vendor_support.c
iTCO_wdt.c PM / watchdog: iTCO: stop watchdog during system suspend 2015-04-03 15:25:04 +02:00
ixp4xx_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
jz4740_wdt.c watchdog: jz4740: Add DT support 2015-02-17 21:34:09 +01:00
Kconfig watchdog: bcm47xx_wdt.c: allow enabling on BCM5301X arch 2015-02-17 21:34:13 +01:00
kempld_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
ks8695_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
lantiq_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
m54xx_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
machzwd.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
Makefile watchdog: Add driver for Mediatek watchdog 2015-02-17 21:32:43 +01:00
max63xx_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
mena21_wdt.c watchdog: New watchdog driver for MEN A21 watchdogs 2013-07-11 22:19:05 +02:00
menf21bmc_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
meson_wdt.c watchdog: drop owner assignment from platform_drivers 2015-01-21 14:52:34 +01:00
mixcomwd.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
moxart_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
mpc8xxx_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
mtk_wdt.c watchdog: Add driver for Mediatek watchdog 2015-02-17 21:32:43 +01:00
mtx-1_wdt.c watchdog: delete non-required instances of include <linux/init.h> 2014-03-31 13:22:45 +02:00
mv64x60_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
nuc900_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
nv_tco.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
nv_tco.h
octeon-wdt-main.c MIPS: OCTEON: watchdog: don't jump to bootloader without entry address 2014-08-02 00:06:42 +02:00
octeon-wdt-nmi.S
of_xilinx_wdt.c watchdog: xilinx: Remove .owner field for driver 2014-10-20 20:43:42 +02:00
omap_wdt.c watchdog: Fix omap watchdogs to enable the magic close bit 2015-02-17 21:32:36 +01:00
omap_wdt.h
orion_wdt.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pc87413_wdt.c watchdog: fix checkpatch warnings and error 2014-03-31 13:31:06 +02:00
pcwd.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
pcwd_pci.c watchdog: remove DEFINE_PCI_DEVICE_TABLE macro 2014-01-28 19:07:07 +01:00
pcwd_usb.c watchdog: Remove unnecessary OOM messages 2014-03-31 13:23:19 +02:00
pika_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
pnx833x_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
pnx4008_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
qcom-wdt.c watchdog: qcom: register a restart notifier 2014-10-20 21:04:19 +02:00
rc32434_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
rdc321x_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
retu_wdt.c watchdog: Fix omap watchdogs to enable the magic close bit 2015-02-17 21:32:36 +01:00
riowd.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
rn5t618_wdt.c watchdog: add driver for Ricoh RN5T618 watchdog 2014-10-20 20:55:02 +02:00
rt2880_wdt.c watchdog: rt2880_wdt: minor clean up 2015-02-17 21:32:21 +01:00
s3c2410_wdt.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sa1100_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sb_wdog.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sbc60xxwdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sbc7240_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sbc8360.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sbc_epx_c3.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sbc_fitpc2_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
sc520_wdt.c watchdog: sc520_wdt: Remove unused variable 2014-03-31 13:27:34 +02:00
sc1200wdt.c sc1200_wdt: Fix oops 2013-12-10 08:48:15 +01:00
sch311x_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
scx200_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
shwdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
sirfsoc_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
smsc37b787_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
softdog.c watchdog: fix checkpatch warnings and error 2014-03-31 13:31:06 +02:00
sp805_wdt.c watchdog: sp805: Set watchdog_device->timeout from ->set_timeout() 2014-06-10 21:47:47 +02:00
sp5100_tco.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
sp5100_tco.h watchdog: sp5100_tco: Set the AcpiMmioSel bitmask value to 1 instead of 2 2013-03-22 23:21:55 +01:00
stmp3xxx_rtc_wdt.c stmp3xxx_rtc_wdt: Add suspend/resume PM support 2014-10-20 20:55:54 +02:00
sunxi_wdt.c Merge branch 'platform/remove_owner' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into driver-core-next 2014-11-03 19:53:56 -08:00
tegra_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
ts72xx_wdt.c Merge branch 'platform/remove_owner' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into driver-core-next 2014-11-03 19:53:56 -08:00
twl4030_wdt.c watchdog: Fix omap watchdogs to enable the magic close bit 2015-02-17 21:32:36 +01:00
txx9wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
ux500_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00
via_wdt.c watchdog: via_wdt: replace del_timer by del_timer_sync 2014-06-10 21:38:25 +02:00
w83627hf_wdt.c watchdog: w83627hf_wdt: Add support for NCT6791 and NCT6792 2015-02-17 21:33:37 +01:00
w83877f_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
w83977f_wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
wafer5823wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
watchdog_core.c watchdog: core: Make dt "timeout-sec" property work on drivers w/out min/max 2014-01-28 19:07:56 +01:00
watchdog_core.h
watchdog_dev.c watchdog: core: don't try to stop device if not running 2013-07-11 21:14:39 +02:00
wd501p.h
wdrtas.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
wdt.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
wdt285.c watchdog: wdt285: Fix variable type 2014-03-31 13:28:20 +02:00
wdt977.c watchdog: Get rid of MODULE_ALIAS_MISCDEV statements 2013-11-17 19:38:13 +01:00
wdt_pci.c watchdog: delete non-required instances of include <linux/init.h> 2014-03-31 13:22:45 +02:00
wm831x_wdt.c watchdog: Remove unnecessary OOM messages 2014-03-31 13:23:19 +02:00
wm8350_wdt.c
xen_wdt.c watchdog: drop owner assignment from platform_drivers 2014-10-20 16:21:56 +02:00