aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorGiel van Schijndel <me@mortis.eu>2010-10-04 04:45:28 -0400
committerWim Van Sebroeck <wim@iguana.be>2010-10-28 17:43:35 -0400
commitdee00abbbcab97b8ee3bbafb5e786dde83e26741 (patch)
tree9bc75e24a697f278b7f8d771aed1f3dad95b7f9c /drivers/watchdog
parent29c3e8c8d16b74e91da9be445ff3e14136957753 (diff)
watchdog: f71808e_wdt: add support for the F71889FG
Signed-off-by: Giel van Schijndel <me@mortis.eu> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/Kconfig4
-rw-r--r--drivers/watchdog/f71808e_wdt.c10
2 files changed, 11 insertions, 3 deletions
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 5a5c024482fa..57b8a410697b 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -409,11 +409,11 @@ config ALIM7101_WDT
409 Most people will say N. 409 Most people will say N.
410 410
411config F71808E_WDT 411config F71808E_WDT
412 tristate "Fintek F71808E and F71882FG Watchdog" 412 tristate "Fintek F71808E, F71882FG and F71889FG Watchdog"
413 depends on X86 && EXPERIMENTAL 413 depends on X86 && EXPERIMENTAL
414 help 414 help
415 This is the driver for the hardware watchdog on the Fintek 415 This is the driver for the hardware watchdog on the Fintek
416 F71808E and F71882FG Super I/O controllers. 416 F71808E, F71882FG and F71889FG Super I/O controllers.
417 417
418 You can compile this driver directly into the kernel, or use 418 You can compile this driver directly into the kernel, or use
419 it as a module. The module will be called f71808e_wdt. 419 it as a module. The module will be called f71808e_wdt.
diff --git a/drivers/watchdog/f71808e_wdt.c b/drivers/watchdog/f71808e_wdt.c
index 7e5c266cda48..65e579635dba 100644
--- a/drivers/watchdog/f71808e_wdt.c
+++ b/drivers/watchdog/f71808e_wdt.c
@@ -308,6 +308,12 @@ static int watchdog_start(void)
308 superio_set_bit(watchdog.sioaddr, 0x29, 1); 308 superio_set_bit(watchdog.sioaddr, 0x29, 1);
309 break; 309 break;
310 310
311 case f71889fg:
312 /* set pin 40 to WDTRST# */
313 superio_outb(watchdog.sioaddr, 0x2b,
314 superio_inb(watchdog.sioaddr, 0x2b) & 0xcf);
315 break;
316
311 default: 317 default:
312 /* 318 /*
313 * 'default' label to shut up the compiler and catch 319 * 'default' label to shut up the compiler and catch
@@ -708,8 +714,10 @@ static int __init f71808e_find(int sioaddr)
708 case SIO_F71882_ID: 714 case SIO_F71882_ID:
709 watchdog.type = f71882fg; 715 watchdog.type = f71882fg;
710 break; 716 break;
711 case SIO_F71862_ID:
712 case SIO_F71889_ID: 717 case SIO_F71889_ID:
718 watchdog.type = f71889fg;
719 break;
720 case SIO_F71862_ID:
713 /* These have a watchdog, though it isn't implemented (yet). */ 721 /* These have a watchdog, though it isn't implemented (yet). */
714 err = -ENOSYS; 722 err = -ENOSYS;
715 goto exit; 723 goto exit;