30 #include <linux/module.h>
32 #include <linux/watchdog.h>
36 #define WDT_VERSION "0.4"
39 #define WDT_TIMEOUT 30
48 "Watchdog timeout in seconds. (1<=timeout<=3600, default="
55 #define EP93XX_WATCHDOG 0x00
56 #define EP93XX_WDSTATUS 0x04
59 #define WDT_INTERVAL (HZ/5)
61 static void ep93xx_wdt_timer_ping(
unsigned long data)
100 .identity =
"EP93xx Watchdog",
105 .start = ep93xx_wdt_start,
106 .stop = ep93xx_wdt_stop,
107 .ping = ep93xx_wdt_keepalive,
111 .info = &ep93xx_wdt_ident,
112 .ops = &ep93xx_wdt_ops,
126 resource_size(res), pdev->
name))
133 if (timeout < 1 || timeout > 3600) {
136 "timeout value must be 1<=x<=3600, using %d\n",
144 watchdog_set_nowayout(&ep93xx_wdt_wdd, nowayout);
153 "EP93XX watchdog, driver version " WDT_VERSION "%s\n",
154 (val & 0x08) ?
" (nCS1 disable detected)" :
"");
168 .name =
"ep93xx-wdt",
170 .probe = ep93xx_wdt_probe,