Guenter Roeck
3c10bbde10
watchdog: core: Clear WDOG_HW_RUNNING before calling the stop function
...
WDOG_HW_RUNNING indicates that the hardware watchdog is running while the
watchdog device is closed. The flag may be set by the driver when it is
instantiated to indicate that the watchdog is running, and that the
watchdog core needs to send heartbeat requests to the driver until the
watchdog device is opened.
When the watchdog device is closed, the flag can be used by the driver's
stop function to indicate to the watchdog core that it was unable to stop
the watchdog, and that the watchdog core needs to send heartbeat requests.
This only works if the flag is actually cleared when the watchdog is
stopped. To avoid having to clear the flag in each driver's stop function,
clear it in the watchdog core before calling the stop function.
Reported-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Fixes: ee142889e3 ("watchdog: Introduce WDOG_HW_RUNNING flag")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2016-07-25 12:03: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
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
asm9260_wdt.c
watchdog: asm9260: remove __init and __exit annotations
2016-01-11 22:48:05 +01:00
aspeed_wdt.c
watchdog: Add Aspeed watchdog driver
2016-07-17 20:59:10 +02:00
at32ap700x_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
at91rm9200_wdt.c
Merge git://www.linux-watchdog.org/linux-watchdog
2015-09-11 15:12:59 -07:00
at91sam9_wdt.c
watchdog: at91sam9: get and use slow clock
2015-09-09 21:38:52 +02:00
at91sam9_wdt.h
watchdog: add a driver to support SAMA5D4 watchdog timer
2015-09-09 21:38:29 +02:00
ath79_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
atlas7_wdt.c
watchdog: atlas7_wdt: test clock rate to avoid division by 0
2016-03-16 21:09:08 +01:00
bcm47xx_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
bcm63xx_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
bcm2835_wdt.c
watchdog: bcm2835_wdt: remove redundant ->set_timeout callback
2016-07-17 21:03:50 +02:00
bcm7038_wdt.c
watchdog: Watchdog driver for Broadcom Set-Top Box
2015-10-27 16:12:02 +01:00
bcm_kona_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
bfin_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
booke_wdt.c
watchdog: booke_wdt: Use infrastructure to check timeout limits
2015-09-09 21:34:34 +02:00
cadence_wdt.c
watchdog: cadence_wdt: use to_platform_device()
2015-12-27 21:15:34 +01:00
coh901327_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
cpu5wdt.c
cpwd.c
watchdog: cpwd: Use setup_timer()
2016-05-14 18:25:49 +02:00
da9052_wdt.c
watchdog: da9052_wdt: Drop reference counting
2015-12-29 20:36:03 +01:00
da9055_wdt.c
watchdog: da9055_wdt: Drop reference counting
2015-12-29 20:36:04 +01:00
da9062_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
da9063_wdt.c
watchdog: da9063_wdt: don't trigger watchdog too fast
2016-07-17 21:02:42 +02:00
davinci_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
diag288_wdt.c
watchdog: diag288: Stop re-using watchdog core internal flags
2015-12-29 20:36:02 +01:00
digicolor_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
dw_wdt.c
watchdog: dw_wdt: Convert to use watchdog infrastructure
2016-03-16 21:11:21 +01:00
ebc-c384_wdt.c
watchdog: ebc-c384_wdt: Utilize the ISA bus driver
2016-05-02 09:32:04 -07:00
ep93xx_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
eurotechwdt.c
f71808e_wdt.c
watchdog: f71808e_wdt: Add F81866 support
2016-07-17 21:00:55 +02:00
gef_wdt.c
watchdog: Fix module autoload for OF platform driver
2015-09-28 10:56:01 +02:00
geodewdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
gpio_wdt.c
watchdog: gpio: Do not use device pointer from struct watchdog_device
2015-12-28 23:04:05 +01:00
hpwdt.c
hpwdt: use nmi_panic() when kernel panics in NMI handler
2016-03-22 15:36:02 -07:00
i6300esb.c
ib700wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
ibmasr.c
ie6xx_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
imgpdc_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
imx2_wdt.c
watchdog: imx2_wdt: add external reset support via dt prop
2016-05-14 09:36:38 +02:00
indydog.c
intel-mid_wdt.c
watchdog: intel-mid: add Magic Closure flag
2015-10-28 22:58:32 +01:00
intel_scu_watchdog.c
intel_scu_watchdog.h
iop_wdt.c
it87_wdt.c
watchdog: it87_wdt: add IT8783 ID
2015-02-17 21:32:08 +01:00
it8712f_wdt.c
iTCO_vendor.h
iTCO_vendor_support.c
iTCO_wdt.c
watchdog: iTCO-wdt: handle 5th variation for Apollo Lake
2016-07-17 21:02:09 +02:00
ixp4xx_wdt.c
jz4740_wdt.c
watchdog: remove error message when unable to allocate watchdog device
2016-05-14 16:24:43 +02:00
Kconfig
watchdog: Add Meson GXBB Watchdog Driver
2016-07-17 21:03:25 +02:00
kempld_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
ks8695_wdt.c
char: make misc_deregister a void function
2015-08-05 10:35:49 -07:00
lantiq_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
lpc18xx_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
m54xx_wdt.c
machzwd.c
Makefile
watchdog: Add Meson GXBB Watchdog Driver
2016-07-17 21:03:25 +02:00
max63xx_wdt.c
watchdog: max63xx: make module's license marker match the header
2016-01-31 16:51:56 +01:00
max77620_wdt.c
watchdog: max77620: Add support for watchdog timer
2016-07-17 21:01:07 +02:00
mei_wdt.c
watchdog: mei_wdt: re-register device on event
2016-02-07 13:00:52 -08:00
mena21_wdt.c
watchdog: mena21: Do not use device pointer from struct watchdog_device
2015-12-28 23:04:06 +01:00
menf21bmc_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
meson_gxbb_wdt.c
watchdog: Add Meson GXBB Watchdog Driver
2016-07-17 21:03:25 +02:00
meson_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
mixcomwd.c
moxart_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
mpc8xxx_wdt.c
watchdog: mpc8xxx: use better error code when watchdog cannot be enabled
2015-09-09 21:37:51 +02:00
mt7621_wdt.c
watchdog: add MT7621 watchdog support
2016-01-09 17:45:28 +01:00
mtk_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
mtx-1_wdt.c
mv64x60_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
ni903x_wdt.c
watchdog: ni903x_wdt: Add NI 903x/913x watchdog driver
2016-03-01 16:25:39 +01:00
nuc900_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
nv_tco.c
watchdog: add support for MCP78S chipset in nv_tco
2016-07-17 21:04:13 +02:00
nv_tco.h
octeon-wdt-main.c
watchdog: octeon: Handle the FROZEN hot plug notifier actions.
2016-05-14 09:22:21 +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: omap: don't disable the timer when it should be enabled early
2015-12-27 21:09:40 +01:00
omap_wdt.h
watchdog: omap_wdt: implement get_timeleft
2015-06-22 15:54:35 +02:00
orion_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
pc87413_wdt.c
pcwd.c
watchdog: pcwd: Utilize the module_isa_driver macro
2016-07-17 20:59:23 +02:00
pcwd_pci.c
pcwd_usb.c
watchdog: pcwd_usb: fix compilation warning
2016-01-31 16:52:15 +01:00
pic32-dmt.c
watchdog: pic32-dmt: Remove .owner field for driver
2016-07-25 12:02:32 +02:00
pic32-wdt.c
watchdog: pic32-wdt: Fix return value check in pic32_wdt_drv_probe()
2016-07-25 12:02:43 +02:00
pika_wdt.c
pnx833x_wdt.c
pnx4008_wdt.c
watchdog: pnx4008: restart: support "cmd" from userspace
2016-03-16 21:09:42 +01:00
qcom-wdt.c
watchdog: qcom: configure BARK time in addition to BITE time
2016-07-17 21:03:14 +02:00
rc32434_wdt.c
watchdog: rc32434_wdt: fix ioctl error handling
2016-03-01 15:29:42 +01:00
rdc321x_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
renesas_wdt.c
watchdog: renesas-wdt: add driver
2016-05-14 18:15:40 +02:00
retu_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02: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: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
s3c2410_wdt.c
watchdog: s3c2410_wdt: Add max and min timeout values
2016-03-16 21:08:09 +01:00
sa1100_wdt.c
sama5d4_wdt.c
watchdog: add a driver to support SAMA5D4 watchdog timer
2015-09-09 21:38:29 +02:00
sb_wdog.c
sbc60xxwdt.c
sbc7240_wdt.c
sbc8360.c
sbc_epx_c3.c
sbc_fitpc2_wdt.c
sbsa_gwdt.c
watchdog: sbsa: Drop status function
2016-07-19 10:09:12 +02:00
sc520_wdt.c
sc1200wdt.c
sch311x_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
scx200_wdt.c
shwdt.c
watchdog: shwdt: Use setup_timer()
2016-05-14 18:25:56 +02:00
sirfsoc_wdt.c
watchdog: sirf: fix __iomem * warnings
2016-07-17 21:00:44 +02:00
smsc37b787_wdt.c
softdog.c
watchdog: softdog: improve coding style
2016-07-17 20:54:52 +02:00
sp805_wdt.c
watchdog: sp805: ping fails to abort wdt reset
2016-01-31 16:52:08 +01:00
sp5100_tco.c
watchdog: sp5100_tco: properly check for new register layouts
2016-05-14 16:16:04 +02:00
sp5100_tco.h
st_lpc_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
stmp3xxx_rtc_wdt.c
watchdog: stmp3xxx: Remove unused variables
2016-01-11 21:51:28 +01:00
sun4v_wdt.c
Add sun4v_wdt watchdog driver
2016-01-31 11:06:24 -08:00
sunxi_wdt.c
watchdog: Add 'action' and 'data' parameters to restart handler callback
2016-03-01 15:36:35 +01:00
tangox_wdt.c
watchdog: tangox: Set max_hw_heartbeat_ms instead of max_timeout
2016-07-18 12:10:21 +02:00
tegra_wdt.c
watchdog: tegra: Stop watchdog first if restarting
2015-11-23 08:59:45 +01:00
ts72xx_wdt.c
char: make misc_deregister a void function
2015-08-05 10:35:49 -07:00
ts4800_wdt.c
watchdog: ts4800: add driver for TS-4800 watchdog
2015-12-28 22:29:35 +01:00
twl4030_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
txx9wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
ux500_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
via_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
w83627hf_wdt.c
watchdog: w83627hf: Added NCT6102D support.
2016-03-01 14:22:05 +01:00
w83877f_wdt.c
w83977f_wdt.c
watchdog: w83977f_wdt: underflow in wdt_set_timeout()
2015-11-23 08:59:30 +01:00
wafer5823wdt.c
watchdog_core.c
watchdog: skip min and max timeout validity check when max_hw_heartbeat_ms is defined
2016-07-17 20:59:40 +02:00
watchdog_core.h
watchdog: Create watchdog device in watchdog_dev.c
2015-12-29 20:36:01 +01:00
watchdog_dev.c
watchdog: core: Clear WDOG_HW_RUNNING before calling the stop function
2016-07-25 12:03:04 +02:00
wd501p.h
wdrtas.c
wdt.c
wdt285.c
wdt977.c
wdt_pci.c
wm831x_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
wm8350_wdt.c
Watchdog: Fix parent of watchdog_devices
2015-09-09 21:39:22 +02:00
xen_wdt.c
watchdog: drop owner assignment from platform_drivers
2014-10-20 16:21:56 +02:00
ziirave_wdt.c
watchdog: ziirave_wdt: Correct I2C device id to fix module autoloading.
2016-07-17 21:01:31 +02:00