summaryrefslogtreecommitdiff
path: root/drivers/char/watchdog/shwdt.c
diff options
context:
space:
mode:
authorJiri Slaby <jirislaby@gmail.com>2007-02-08 17:39:36 (GMT)
committerWim Van Sebroeck <wim@iguana.be>2007-02-12 21:43:02 (GMT)
commit82eb7c5059de64bd43f6b3cf3f128470f2b3fb83 (patch)
tree6735317bd9c19574f85fa7e21d0071562e824355 /drivers/char/watchdog/shwdt.c
parent35fcf53870eaa6cc966604a6e36df1c2c1577540 (diff)
downloadlinux-82eb7c5059de64bd43f6b3cf3f128470f2b3fb83.tar.xz
[WATCHDOG] timers cleanup
- Use timer macros to set function and data members and to modify expiration time. - Use DEFINE_TIMER for single (platform dependent) watchdog timers and do not init them at run-time in these cases. - del_timer_sync is common in most cases -- we want to wait for timer function if it's still running. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Steve Hill <steve@navaho.co.uk> Cc: Heiko Ronsdorf <hero@ihg.uni-duisburg.de> Cc: Fernando Fuganti <fuganti@conectiva.com.br> Cc: Gergely Madarasz <gorgo@itc.hu> Cc: Ken Hollis <khollis@bitgate.com> Cc: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'drivers/char/watchdog/shwdt.c')
-rw-r--r--drivers/char/watchdog/shwdt.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/char/watchdog/shwdt.c b/drivers/char/watchdog/shwdt.c
index dc40362..cecbedd 100644
--- a/drivers/char/watchdog/shwdt.c
+++ b/drivers/char/watchdog/shwdt.c
@@ -65,10 +65,12 @@ static int clock_division_ratio = WTCSR_CKS_4096;
#define next_ping_period(cks) msecs_to_jiffies(cks - 4)
+static void sh_wdt_ping(unsigned long data);
+
static unsigned long shwdt_is_open;
static struct watchdog_info sh_wdt_info;
static char shwdt_expect_close;
-static struct timer_list timer;
+static DEFINE_TIMER(timer, sh_wdt_ping, 0, 0);
static unsigned long next_heartbeat;
#define WATCHDOG_HEARTBEAT 30 /* 30 sec default heartbeat */
@@ -433,10 +435,6 @@ static int __init sh_wdt_init(void)
"be 1<=x<=3600, using %d\n", heartbeat);
}
- init_timer(&timer);
- timer.function = sh_wdt_ping;
- timer.data = 0;
-
rc = register_reboot_notifier(&sh_wdt_notifier);
if (unlikely(rc)) {
printk(KERN_ERR PFX "Can't register reboot notifier (err=%d)\n",