diff options
author | Diego Elio Pettenò <flameeyes@flameeyes.eu> | 2012-03-14 15:49:04 -0400 |
---|---|---|
committer | Wim Van Sebroeck <wim@iguana.be> | 2012-05-23 10:24:43 -0400 |
commit | 198ca0153412a97e968b5deb67d789000faef129 (patch) | |
tree | 4651b89925ae5c635ece460537478d16b3e225f3 /drivers/watchdog | |
parent | 7050bd54997a1606377a1985b508a145ea8c1555 (diff) |
watchdog: it87_wdt: Add support for IT8728F watchdog.
This works the same way IT8721F works, but it supports WDT_PWROK
(checked on the datasheet).
Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r-- | drivers/watchdog/Kconfig | 7 | ||||
-rw-r--r-- | drivers/watchdog/it87_wdt.c | 7 |
2 files changed, 11 insertions, 3 deletions
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index 0542314e1510..66e77ad5ad6f 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig | |||
@@ -596,7 +596,12 @@ config IT87_WDT | |||
596 | depends on X86 && EXPERIMENTAL | 596 | depends on X86 && EXPERIMENTAL |
597 | ---help--- | 597 | ---help--- |
598 | This is the driver for the hardware watchdog on the ITE IT8702, | 598 | This is the driver for the hardware watchdog on the ITE IT8702, |
599 | IT8712, IT8716, IT8718, IT8720, IT8721, IT8726 Super I/O chips. | 599 | IT8712, IT8716, IT8718, IT8720, IT8721, IT8726 and IT8728 |
600 | Super I/O chips. | ||
601 | |||
602 | If the driver does not work, then make sure that the game port in | ||
603 | the BIOS is enabled. | ||
604 | |||
600 | This watchdog simply watches your kernel to make sure it doesn't | 605 | This watchdog simply watches your kernel to make sure it doesn't |
601 | freeze, and if it does, it reboots your computer after a certain | 606 | freeze, and if it does, it reboots your computer after a certain |
602 | amount of time. | 607 | amount of time. |
diff --git a/drivers/watchdog/it87_wdt.c b/drivers/watchdog/it87_wdt.c index 8a741bcb5124..d3dcc6988b5f 100644 --- a/drivers/watchdog/it87_wdt.c +++ b/drivers/watchdog/it87_wdt.c | |||
@@ -12,7 +12,8 @@ | |||
12 | * http://www.ite.com.tw/ | 12 | * http://www.ite.com.tw/ |
13 | * | 13 | * |
14 | * Support of the watchdog timers, which are available on | 14 | * Support of the watchdog timers, which are available on |
15 | * IT8702, IT8712, IT8716, IT8718, IT8720, IT8721 and IT8726. | 15 | * IT8702, IT8712, IT8716, IT8718, IT8720, IT8721, IT8726 |
16 | * and IT8728. | ||
16 | * | 17 | * |
17 | * This program is free software; you can redistribute it and/or | 18 | * This program is free software; you can redistribute it and/or |
18 | * modify it under the terms of the GNU General Public License | 19 | * modify it under the terms of the GNU General Public License |
@@ -84,6 +85,7 @@ | |||
84 | #define IT8720_ID 0x8720 | 85 | #define IT8720_ID 0x8720 |
85 | #define IT8721_ID 0x8721 | 86 | #define IT8721_ID 0x8721 |
86 | #define IT8726_ID 0x8726 /* the data sheet suggest wrongly 0x8716 */ | 87 | #define IT8726_ID 0x8726 /* the data sheet suggest wrongly 0x8716 */ |
88 | #define IT8728_ID 0x8728 | ||
87 | 89 | ||
88 | /* GPIO Configuration Registers LDN=0x07 */ | 90 | /* GPIO Configuration Registers LDN=0x07 */ |
89 | #define WDTCTRL 0x71 | 91 | #define WDTCTRL 0x71 |
@@ -95,7 +97,7 @@ | |||
95 | #define WDT_CIRINT 0x80 | 97 | #define WDT_CIRINT 0x80 |
96 | #define WDT_MOUSEINT 0x40 | 98 | #define WDT_MOUSEINT 0x40 |
97 | #define WDT_KYBINT 0x20 | 99 | #define WDT_KYBINT 0x20 |
98 | #define WDT_GAMEPORT 0x10 /* not in it8718, it8720, it8721 */ | 100 | #define WDT_GAMEPORT 0x10 /* not in it8718, it8720, it8721, it8728 */ |
99 | #define WDT_FORCE 0x02 | 101 | #define WDT_FORCE 0x02 |
100 | #define WDT_ZERO 0x01 | 102 | #define WDT_ZERO 0x01 |
101 | 103 | ||
@@ -616,6 +618,7 @@ static int __init it87_wdt_init(void) | |||
616 | case IT8718_ID: | 618 | case IT8718_ID: |
617 | case IT8720_ID: | 619 | case IT8720_ID: |
618 | case IT8721_ID: | 620 | case IT8721_ID: |
621 | case IT8728_ID: | ||
619 | max_units = 65535; | 622 | max_units = 65535; |
620 | try_gameport = 0; | 623 | try_gameport = 0; |
621 | break; | 624 | break; |