summary refs log tree commit diff
path: root/drivers/watchdog/mv64x60_wdt.c
diff options
context:
space:
mode:
authorBoris BREZILLON <b.brezillon@overkiz.com>2013-10-04 09:24:12 +0200
committerWim Van Sebroeck <wim@iguana.be>2014-01-28 21:28:37 +0100
commit5161b31dc39a6d6dadc95f298de48a725b73ada8 (patch)
tree9975955af8b4387f98d9e6e7bfed31e2a215e546 /drivers/watchdog/mv64x60_wdt.c
parente30722e49783ed5ea56b5737a2821d022c4e915e (diff)
downloadlinux-5161b31dc39a6d6dadc95f298de48a725b73ada8.tar.gz
watchdog: at91sam9_wdt: better watchdog support
The at91sam9 watchdog timer can only be configured once, and the current
implementation tries to configure it in a static way:
- 2 seconds timeout
- wdt restart every 500ms

If the timer has already been configured with different values, it returns an
error and do not create any watchdog device.

This is not critical if the watchdog is disabled, but if it has been enabled with
different timeout values it will lead to a SoC reset.

This patch series tries to address this issue by adapting the heartbeat value
according the WDT timer config:
- it first tries to configure the timer as requested.
- if it fails it fallbacks to the current config, adapting its heartbeat timer
to the needs

This patch series also move to a dynamically allocated at91wdt device instead
of the static instance.

It adds a new at91 wdt type: software. This new type make use of the at91 wdt
interrupt to trigger a software reboot.

Finally it adds several properties to the device tree bindings.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog/mv64x60_wdt.c')
0 files changed, 0 insertions, 0 deletions