summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/watchdog/w83627hf_wdt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/watchdog/w83627hf_wdt.c b/drivers/watchdog/w83627hf_wdt.c
index 910d43736821..c5d34f46e7ad 100644
--- a/drivers/watchdog/w83627hf_wdt.c
+++ b/drivers/watchdog/w83627hf_wdt.c
@@ -107,7 +107,9 @@ static void w83627hf_init(struct watchdog_device *wdog)
}
outb_p(0x30, WDT_EFER); /* select CR30 */
- outb_p(0x01, WDT_EFDR); /* set bit 0 to activate GPIO2 */
+ t = inb(WDT_EFDR);
+ if (!(t & 0x01))
+ outb_p(t | 0x01, WDT_EFDR); /* set bit 0 to activate GPIO2 */
outb_p(0xF6, WDT_EFER); /* Select CRF6 */
t = inb_p(WDT_EFDR); /* read CRF6 */