]> Pileus Git - ~andy/linux/blobdiff - drivers/watchdog/orion_wdt.c
sfc: Move efx_mcdi_mac_reconfigure() to siena.c and rename
[~andy/linux] / drivers / watchdog / orion_wdt.c
index da577980d390cbe5df8343f3de64240b4f04c528..4ea5fcccac02d1ee6f933cc1e5b8b8e0260da3a4 100644 (file)
@@ -38,6 +38,9 @@
 #define WDT_IN_USE             0
 #define WDT_OK_TO_CLOSE                1
 
+#define WDT_RESET_OUT_EN       BIT(1)
+#define WDT_INT_REQ            BIT(3)
+
 static bool nowayout = WATCHDOG_NOWAYOUT;
 static int heartbeat = -1;             /* module parameter (seconds) */
 static unsigned int wdt_max_duration;  /* (seconds) */
@@ -67,9 +70,7 @@ static int orion_wdt_start(struct watchdog_device *wdt_dev)
        writel(wdt_tclk * wdt_dev->timeout, wdt_reg + WDT_VAL);
 
        /* Clear watchdog timer interrupt */
-       reg = readl(BRIDGE_CAUSE);
-       reg &= ~WDT_INT_REQ;
-       writel(reg, BRIDGE_CAUSE);
+       writel(~WDT_INT_REQ, BRIDGE_CAUSE);
 
        /* Enable watchdog timer */
        reg = readl(wdt_reg + TIMER_CTRL);