From 5e88e6c4e8b044a1d275f1a599128b95046d2968 Mon Sep 17 00:00:00 2001 From: Jiri Slaby Date: Mon, 5 Mar 2012 14:51:57 +0100 Subject: [PATCH] ALPHA: srmcons, use timer functions It makes the code more readable. We move the setup to the allocation location because we need to initialize timers only once. Signed-off-by: Jiri Slaby Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Greg Kroah-Hartman --- arch/alpha/kernel/srmcons.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/arch/alpha/kernel/srmcons.c b/arch/alpha/kernel/srmcons.c index 783f4e50c111..f1fdf178bcb4 100644 --- a/arch/alpha/kernel/srmcons.c +++ b/arch/alpha/kernel/srmcons.c @@ -79,10 +79,8 @@ srmcons_receive_chars(unsigned long data) } spin_lock(&srmconsp->lock); - if (srmconsp->tty) { - srmconsp->timer.expires = jiffies + incr; - add_timer(&srmconsp->timer); - } + if (srmconsp->tty) + mod_timer(&srmconsp->timer, jiffies + incr); spin_unlock(&srmconsp->lock); local_irq_restore(flags); @@ -172,7 +170,8 @@ srmcons_get_private_struct(struct srmcons_private **ps) else { srmconsp->tty = NULL; spin_lock_init(&srmconsp->lock); - init_timer(&srmconsp->timer); + setup_timer(&srmconsp->timer, srmcons_receive_chars, + (unsigned long)srmconsp); } spin_unlock_irqrestore(&srmconsp_lock, flags); @@ -199,10 +198,7 @@ srmcons_open(struct tty_struct *tty, struct file *filp) tty->driver_data = srmconsp; srmconsp->tty = tty; - srmconsp->timer.function = srmcons_receive_chars; - srmconsp->timer.data = (unsigned long)srmconsp; - srmconsp->timer.expires = jiffies + 10; - add_timer(&srmconsp->timer); + mod_timer(&srmconsp->timer, jiffies + 10); } spin_unlock_irqrestore(&srmconsp->lock, flags); -- 2.20.1