aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/watchdog/w83697hf_wdt.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/watchdog/w83697hf_wdt.c')
-rw-r--r--drivers/char/watchdog/w83697hf_wdt.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/char/watchdog/w83697hf_wdt.c b/drivers/char/watchdog/w83697hf_wdt.c
index ad397f912bd4..b1f225798500 100644
--- a/drivers/char/watchdog/w83697hf_wdt.c
+++ b/drivers/char/watchdog/w83697hf_wdt.c
@@ -69,11 +69,17 @@ MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=CON
69#define W83697HF_EFIR (wdt_io+0) /* Extended Function Index Register (same as EFER) */ 69#define W83697HF_EFIR (wdt_io+0) /* Extended Function Index Register (same as EFER) */
70#define W83697HF_EFDR (wdt_io+1) /* Extended Function Data Register */ 70#define W83697HF_EFDR (wdt_io+1) /* Extended Function Data Register */
71 71
72static void 72static inline void
73w83697hf_select_wd_register(void) 73w83697hf_unlock(void)
74{ 74{
75 outb_p(0x87, W83697HF_EFER); /* Enter extended function mode */ 75 outb_p(0x87, W83697HF_EFER); /* Enter extended function mode */
76 outb_p(0x87, W83697HF_EFER); /* Again according to manual */ 76 outb_p(0x87, W83697HF_EFER); /* Again according to manual */
77}
78
79static void
80w83697hf_select_wd_register(void)
81{
82 w83697hf_unlock();
77 83
78 outb_p(0x29, W83697HF_EFER); /* select CR29 */ 84 outb_p(0x29, W83697HF_EFER); /* select CR29 */
79 outb_p(0x20, W83697HF_EFDR); /* select WDTO */ 85 outb_p(0x20, W83697HF_EFDR); /* select WDTO */