Commit e11cfc697601fe80b308fe9162649ab294013c32

Authored by Srikanth Krishnakar
Committed by Wim Van Sebroeck
1 parent 31f4f5b495

watchdog: w83627hf_wdt: Support NCT6116D

The watchdog controller on NCT6116D is compatible with NCT6102D.
Extend the support to enable SuperIO based NCT6116D watchdog device.

Signed-off-by: Srikanth Krishnakar <Srikanth_Krishnakar@mentor.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20190918160458.10108-1-Srikanth_Krishnakar@mentor.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>

Showing 2 changed files with 11 additions and 1 deletions Side-by-side Diff

drivers/watchdog/Kconfig
... ... @@ -1485,6 +1485,7 @@
1485 1485 NCT6791
1486 1486 NCT6792
1487 1487 NCT6102D/04D/06D
  1488 + NCT6116D
1488 1489  
1489 1490 This watchdog simply watches your kernel to make sure it doesn't
1490 1491 freeze, and if it does, it reboots your computer after a certain
drivers/watchdog/w83627hf_wdt.c
... ... @@ -49,7 +49,7 @@
49 49 enum chips { w83627hf, w83627s, w83697hf, w83697ug, w83637hf, w83627thf,
50 50 w83687thf, w83627ehf, w83627dhg, w83627uhg, w83667hg, w83627dhg_p,
51 51 w83667hg_b, nct6775, nct6776, nct6779, nct6791, nct6792, nct6793,
52   - nct6795, nct6796, nct6102 };
  52 + nct6795, nct6796, nct6102, nct6116 };
53 53  
54 54 static int timeout; /* in seconds */
55 55 module_param(timeout, int, 0);
... ... @@ -94,6 +94,7 @@
94 94 #define NCT6775_ID 0xb4
95 95 #define NCT6776_ID 0xc3
96 96 #define NCT6102_ID 0xc4
  97 +#define NCT6116_ID 0xd2
97 98 #define NCT6779_ID 0xc5
98 99 #define NCT6791_ID 0xc8
99 100 #define NCT6792_ID 0xc9
... ... @@ -211,6 +212,7 @@
211 212 case nct6795:
212 213 case nct6796:
213 214 case nct6102:
  215 + case nct6116:
214 216 /*
215 217 * These chips have a fixed WDTO# output pin (W83627UHG),
216 218 * or support more than one WDTO# output pin.
... ... @@ -417,6 +419,12 @@
417 419 cr_wdt_control = NCT6102D_WDT_CONTROL;
418 420 cr_wdt_csr = NCT6102D_WDT_CSR;
419 421 break;
  422 + case NCT6116_ID:
  423 + ret = nct6102;
  424 + cr_wdt_timeout = NCT6102D_WDT_TIMEOUT;
  425 + cr_wdt_control = NCT6102D_WDT_CONTROL;
  426 + cr_wdt_csr = NCT6102D_WDT_CSR;
  427 + break;
420 428 case 0xff:
421 429 ret = -ENODEV;
422 430 break;
... ... @@ -482,6 +490,7 @@
482 490 "NCT6795",
483 491 "NCT6796",
484 492 "NCT6102",
  493 + "NCT6116",
485 494 };
486 495  
487 496 /* Apply system-specific quirks */