diff options
author | Marc van der Wal <x0r+kernel@x0r.fr> | 2014-03-06 13:36:59 +0400 |
---|---|---|
committer | Wim Van Sebroeck <wim@iguana.be> | 2014-03-31 15:33:55 +0400 |
commit | 0bcd0b6a47431d9895dc2dd6a8c4185008849131 (patch) | |
tree | f75055beb1a08be642e491595e44bbeaa381e46d /drivers/watchdog/ath79_wdt.c | |
parent | 5e82ec94ac5d2d941414861654032543a75cf823 (diff) | |
download | linux-0bcd0b6a47431d9895dc2dd6a8c4185008849131.tar.xz |
watchdog: it87_wdt: Work around non-working CIR interrupts
On some hardware platforms, the it87_wdt watchdog resets the machine
despite the watchdog daemon running and writing to /dev/watchdog.
This is due to Consumer IR buffer underrun interrupts being used as
triggers to reset the timer. On some buggy hardware implementations
such as the iEi AFL-12A-N270 single-board computer, this method does
not work.
However, resetting the timer by writing its original timeout value in
its configuration register over and over again suppresses the unwanted
reboots.
Add a module option (nocir), 0 by default in order not to break existing
setups. Setting it to 1 enables the workaround.
Fixes bug #42801 <https://bugzilla.kernel.org/show_bug.cgi?id=42801>.
Tested primarily on Linux 3.5.7, applies cleanly on Linux 3.13.5.
Signed-off-by: Marc van der Wal <x0r+kernel@x0r.fr>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog/ath79_wdt.c')
0 files changed, 0 insertions, 0 deletions