summaryrefslogtreecommitdiff
path: root/drivers/watchdog/w83627hf_wdt.c
diff options
context:
space:
mode:
authorHerman Morsink Vollenbroek <h.morsinkvollenbroek@home.nl>2010-12-06 21:24:56 +0100
committerWim Van Sebroeck <wim@iguana.be>2011-01-12 10:23:52 +0000
commit6d106e0cac842bc17c87aadd5fa01730694c987a (patch)
tree28385bafc5b83251c359eadc709797b617b2d639 /drivers/watchdog/w83627hf_wdt.c
parent9c67bea419c384561eeb84bdf251d521a3234e45 (diff)
watchdog: Fix reboot on W83627ehf chipset.
The watchdog driver for the SUPERIO chip winbond w83627ehf does not work. If you open /dev/watchdog and write a character to /dev/watchdog then the watchdog will be triggered. However the watchdog will not trigger the hardware RESET after the timeout, because the watchdog has never been enabled. Signed-off-by: Herman Morsink Vollenbroek <h.morsinkvollenbroek@home.nl> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog/w83627hf_wdt.c')
-rw-r--r--drivers/watchdog/w83627hf_wdt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/watchdog/w83627hf_wdt.c b/drivers/watchdog/w83627hf_wdt.c
index 48f2e0148bb4..e5c91d4404ed 100644
--- a/drivers/watchdog/w83627hf_wdt.c
+++ b/drivers/watchdog/w83627hf_wdt.c
@@ -129,6 +129,8 @@ static void w83627hf_init(void)
t = inb_p(WDT_EFDR); /* read CRF5 */
t &= ~0x0C; /* set second mode & disable keyboard
turning off watchdog */
+ t |= 0x02; /* enable the WDTO# output low pulse
+ to the KBRST# pin (PIN60) */
outb_p(t, WDT_EFDR); /* Write back to CRF5 */
outb_p(0xF7, WDT_EFER); /* Select CRF7 */