linux/drivers/watchdog
Marco Felsch 44ee54aabf watchdog: da9063: Fix updating timeout value
The DA9063 watchdog has only one register field to store the timeout value
and to enable the watchdog. The watchdog gets enabled if the value is
not zero. There is no issue if the watchdog is already running but it
leads into problems if the watchdog is disabled.

If the watchdog is disabled and only the timeout value should be prepared
the watchdog gets enabled too. Add a check to get the current watchdog
state and update the watchdog timeout value on hw-side only if the
watchdog is already active.

Fixes: 5e9c16e376 ("watchdog: Add DA9063 PMIC watchdog driver.")
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
2018-06-06 10:45:32 +02:00
..
acquirewdt.c
advantechwdt.c watchdog: advantechwdt: mark expected switch fall-through 2017-12-28 20:45:28 +01:00
alim1535_wdt.c watchdog: alim1535_wdt: mark expected switch fall-through 2017-12-28 20:45:28 +01:00
alim7101_wdt.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
ar7_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
asm9260_wdt.c watchdog: asm9260_wdt: fix error handling in asm9260_wdt_probe() 2018-03-03 17:04:16 +01:00
aspeed_wdt.c aspeed: watchdog: Set bootstatus during probe 2018-04-16 10:22:40 +02:00
at91rm9200_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
at91sam9_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
at91sam9_wdt.h watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
ath79_wdt.c
atlas7_wdt.c
bcm47xx_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
bcm63xx_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
bcm2835_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
bcm7038_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
bcm_kona_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
booke_wdt.c
cadence_wdt.c watchdog: simplify getting .drvdata 2018-05-21 21:24:40 +02:00
coh901327_wdt.c watchdog: coh901327: make license text and module licence match 2018-03-03 17:04:16 +01:00
cpu5wdt.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
cpwd.c watchdog: cpwd: Convert timers to use timer_setup() 2017-11-02 15:50:26 -07:00
da9052_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
da9055_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
da9062_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
da9063_wdt.c watchdog: da9063: Fix updating timeout value 2018-06-06 10:45:32 +02:00
davinci_wdt.c watchdog: davinci_wdt: fix error handling in davinci_wdt_probe() 2018-03-26 20:47:56 +02:00
diag288_wdt.c watchdog: constify watchdog_ops and watchdog_info structures 2017-09-09 20:29:53 +02:00
digicolor_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
dw_wdt.c watchdog: dw: save/restore control and timeout across suspend/resume 2018-03-13 19:14:19 +01:00
ebc-c384_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
ep93xx_wdt.c watchdog: ep93xx_wdt: cleanup and let the core handle the heartbeat 2017-02-24 14:00:23 -08:00
eurotechwdt.c watchdog: eurotechwdt: mark expected switch fall-through 2017-12-28 20:45:51 +01:00
f71808e_wdt.c watchdog: f71808e_wdt: Fix WD_EN register read 2018-03-10 11:45:07 +01:00
ftwdt010_wdt.c watchdog: ftwdt010: Make interrupt optional 2017-12-28 20:45:02 +01:00
gef_wdt.c
geodewdt.c
gpio_wdt.c watchdog: gpio: change order for setting default timeout 2018-03-03 17:04:15 +01:00
hpwdt.c watchdog: hpwdt: Claim NMIs generated by iLO5 2018-05-21 21:24:42 +02:00
i6300esb.c watchdog: i6300esb: remove info message and version number 2017-12-28 20:45:18 +01:00
ib700wdt.c watchdog: ib700wdt: mark expected switch fall-through 2017-12-28 20:45:52 +01:00
ibmasr.c
ie6xx_wdt.c
imgpdc_wdt.c
imx2_wdt.c watchdog: imx2_wdt: allow setting timeout in devicetree 2018-03-03 17:04:12 +01:00
indydog.c
intel_scu_watchdog.c
intel_scu_watchdog.h
intel-mid_wdt.c watchdog: intel-mid_wdt: Keep watchdog running 2017-06-05 20:37:35 +02:00
iop_wdt.c
it87_wdt.c watchdog: it87_wdt: constify watchdog_ops structure 2017-09-09 20:06:25 +02:00
it8712f_wdt.c
iTCO_vendor_support.c
iTCO_vendor.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
iTCO_wdt.c watchdog: Revert "iTCO_wdt: all versions count down twice" 2017-09-09 17:41:24 +02:00
ixp4xx_wdt.c
jz4740_wdt.c watchdog: jz4740: Add support for the watchdog in jz4780 SoC 2017-12-28 20:44:44 +01:00
Kconfig linux-watchdog 4.17-rc1 merge window tag 2018-04-13 15:43:50 -07:00
kempld_wdt.c watchdog: kempld: fix gcc-4.3 build 2017-03-01 06:15:10 -08:00
ks8695_wdt.c
lantiq_wdt.c watchdog: lantiq: access boot cause register through regmap 2017-09-04 13:53:15 +02:00
loongson1_wdt.c
lpc18xx_wdt.c watchdog: lpc18xx: remove assignment of unused ret-value 2018-03-03 17:04:16 +01:00
m54xx_wdt.c
machzwd.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
Makefile linux-watchdog 4.17-rc1 merge window tag 2018-04-13 15:43:50 -07:00
max63xx_wdt.c
max77620_wdt.c watchdog: max77620_wdt: constify platform_device_id 2017-09-09 20:40:39 +02:00
mei_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
mena21_wdt.c watchdog: mena21_wdt: Drop unnecessary mutex lock 2018-05-21 21:25:23 +02:00
menf21bmc_wdt.c
meson_gxbb_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
meson_wdt.c watchdog: meson: allow setting timeout in devicetree 2018-03-03 17:04:14 +01:00
mixcomwd.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
moxart_wdt.c
mpc8xxx_wdt.c watchdog: mpc8xxx: use the core worker function 2017-12-28 20:45:36 +01:00
mt7621_wdt.c watchdog: mt7621: switch to using managed devm_watchdog_register_device() 2018-01-21 12:44:59 +01:00
mtk_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
mtx-1_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
mv64x60_wdt.c
ni903x_wdt.c
nic7018_wdt.c
npcm_wdt.c watchdog: Add Nuvoton NPCM watchdog driver 2018-03-24 10:19:39 +01:00
nuc900_wdt.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
nv_tco.c
nv_tco.h
octeon-wdt-main.c watchdog: octeon-wdt: Add support for 78XX SOCs. 2017-09-04 21:19:03 +02:00
octeon-wdt-nmi.S watchdog: octeon-wdt: Remove old boot vector code. 2017-09-04 21:19:03 +02:00
of_xilinx_wdt.c watchdog: simplify getting .drvdata 2018-05-21 21:24:40 +02:00
omap_wdt.c watchdog: omap_wdt: change order for setting default timeout 2018-03-03 17:04:15 +01:00
omap_wdt.h
orion_wdt.c watchdog: orion: fix typo 2017-12-28 20:44:57 +01:00
pc87413_wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
pcwd_pci.c watchdog: pcwd_pci: mark expected switch fall-through 2017-12-28 20:45:29 +01:00
pcwd_usb.c watchdog: pcwd_usb: remove unneeded DRIVER_LICENSE #define 2017-12-28 20:45:50 +01:00
pcwd.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
pic32-dmt.c
pic32-wdt.c
pika_wdt.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
pnx833x_wdt.c
pnx4008_wdt.c watchdog: pnx4008: make use of timeout-secs provided in devicetree 2018-03-03 17:04:13 +01:00
pretimeout_noop.c
pretimeout_panic.c
qcom-wdt.c watchdog: qcom: Check for platform_get_resource() failure 2017-09-09 20:50:35 +02:00
rave-sp-wdt.c watchdog: Add RAVE SP watchdog driver 2018-01-08 10:08:36 +00:00
rc32434_wdt.c
rdc321x_wdt.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
renesas_wdt.c watchdog: renesas-wdt: Remove R-Car M2-W ES2.x from blacklist 2018-05-21 21:24:41 +02:00
retu_wdt.c
riowd.c
rn5t618_wdt.c
rt2880_wdt.c watchdog: constify watchdog_ops and watchdog_info structures 2017-09-09 20:29:53 +02:00
rtd119x_wdt.c watchdog: Add Realtek RTD1295 2017-12-28 20:44:39 +01:00
rza_wdt.c watchdog: add rza_wdt driver 2017-06-05 20:37:17 +02:00
s3c2410_wdt.c watchdog: s3c2410: Minor code cleanup 2017-06-05 20:38:52 +02:00
sa1100_wdt.c
sama5d4_wdt.c watchdog: sama5d4: make use of timeout-secs provided in devicetree 2018-03-03 17:04:12 +01:00
sb_wdog.c
sbc60xxwdt.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
sbc7240_wdt.c
sbc8360.c
sbc_epx_c3.c
sbc_fitpc2_wdt.c
sbsa_gwdt.c watchdog: sbsa: use 32-bit read for WCV 2018-03-03 15:52:32 +01:00
sc520_wdt.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
sc1200wdt.c watchdog: sc1200: constify pnp_device_id 2017-09-09 21:14:46 +02:00
sch311x_wdt.c watchdog: sch311x_wdt: Mark expected switch fall-through 2018-04-16 10:22:39 +02:00
scx200_wdt.c
shwdt.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
sirfsoc_wdt.c watchdog: sirfsoc: allow setting timeout in devicetree 2018-03-03 17:04:13 +01:00
smsc37b787_wdt.c
softdog.c watchdog: softdog: fire watchdog even if softirqs do not get to run 2017-03-01 06:15:10 -08:00
sp805_wdt.c watchdog: sp805: add restart handler 2018-05-21 21:24:41 +02:00
sp5100_tco.c watchdog: sp5100_tco: Add support for recent FCH versions 2018-01-21 12:56:37 +01:00
sp5100_tco.h watchdog: sp5100_tco: Add support for recent FCH versions 2018-01-21 12:56:37 +01:00
sprd_wdt.c watchdog: sprd_wdt: Fix error handling in sprd_wdt_enable() 2018-03-13 19:14:18 +01:00
st_lpc_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
stm32_iwdg.c watchdog: stm32: Fix copyright 2017-12-28 20:45:51 +01:00
stmp3xxx_rtc_wdt.c
sun4v_wdt.c
sunxi_wdt.c watchdog: sunxi: allow setting timeout in devicetree 2018-03-03 17:04:13 +01:00
tangox_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
tegra_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
ts72xx_wdt.c watchdog: ts72xx_wdt: constify watchdog_ops structure 2017-09-09 20:06:14 +02:00
ts4800_wdt.c
twl4030_wdt.c mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
txx9wdt.c
uniphier_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
ux500_wdt.c
via_wdt.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
w83627hf_wdt.c watchdog: w83627hf: make const array chip_name static 2017-09-09 20:08:03 +02:00
w83877f_wdt.c treewide: Switch DEFINE_TIMER callbacks to struct timer_list * 2017-11-21 15:57:05 -08:00
w83977f_wdt.c watchdog: w83977f_wdt: Mark expected switch fall-through 2018-04-16 10:22:39 +02:00
wafer5823wdt.c watchdog: wafer5823wdt: Mark expected switch fall-through 2018-04-16 10:22:39 +02:00
watchdog_core.c watchdog: document watchdog_init_timeout() wdd parameter 2017-12-28 20:45:56 +01:00
watchdog_core.h
watchdog_dev.c watchdog: core: make sure the watchdog_worker is not deferred 2018-01-21 12:44:59 +01:00
watchdog_pretimeout.c
watchdog_pretimeout.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
wd501p.h
wdat_wdt.c watchdog: simplify getting .drvdata 2018-05-21 21:24:40 +02:00
wdrtas.c
wdt285.c
wdt977.c
wdt_pci.c watchdog: wdt_pci: mark expected switch fall-through 2017-12-28 20:45:30 +01:00
wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
wm831x_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
wm8350_wdt.c watchdog: add SPDX identifiers for watchdog subsystem 2018-03-24 10:19:40 +01:00
xen_wdt.c watchdog: xen_wdt: remove info message and version number 2017-12-28 20:45:44 +01:00
ziirave_wdt.c watchdog: ziirave: constify i2c_device_id 2017-09-09 21:16:17 +02:00
zx2967_wdt.c watchdog: zx2967: explicitly request exclusive reset control 2017-09-09 20:18:43 +02:00