Browse Source

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>
Herman Morsink Vollenbroek 14 năm trước cách đây
mục cha
commit
6d106e0cac
1 tập tin đã thay đổi với 2 bổ sung0 xóa
  1. 2 0
      drivers/watchdog/w83627hf_wdt.c

+ 2 - 0
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 */