From ec81b5e6294088dc4738d0e8c2316c0dc081215c Mon Sep 17 00:00:00 2001 From: Tilman Schmidt Date: Mon, 10 Apr 2006 22:55:03 -0700 Subject: [PATCH] [PATCH] isdn4linux: Siemens Gigaset drivers: timer usage With Hansjoerg Lipp Correct timer usage in the Gigaset drivers to take advantage of the existing setup_timer() function, and use milliseconds as unit. Signed-off-by: Hansjoerg Lipp Signed-off-by: Tilman Schmidt Cc: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/isdn/gigaset/common.c | 7 +++---- drivers/isdn/gigaset/gigaset.h | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/isdn/gigaset/common.c b/drivers/isdn/gigaset/common.c index 1163d316f5..a607837b9f 100644 --- a/drivers/isdn/gigaset/common.c +++ b/drivers/isdn/gigaset/common.c @@ -219,7 +219,7 @@ static void timer_tick(unsigned long data) timeout = 1; if (atomic_read(&cs->running)) { - mod_timer(&cs->timer, jiffies + GIG_TICK); + mod_timer(&cs->timer, jiffies + msecs_to_jiffies(GIG_TICK)); if (timeout) { dbg(DEBUG_CMD, "scheduling timeout"); tasklet_schedule(&cs->event_tasklet); @@ -685,9 +685,8 @@ struct cardstate *gigaset_initcs(struct gigaset_driver *drv, int channels, gigaset_if_init(cs); atomic_set(&cs->running, 1); - cs->timer.data = (unsigned long) cs; - cs->timer.function = timer_tick; - cs->timer.expires = jiffies + GIG_TICK; + setup_timer(&cs->timer, timer_tick, (unsigned long) cs); + cs->timer.expires = jiffies + msecs_to_jiffies(GIG_TICK); /* FIXME: can jiffies increase too much until the timer is added? * Same problem(?) with mod_timer() in timer_tick(). */ add_timer(&cs->timer); diff --git a/drivers/isdn/gigaset/gigaset.h b/drivers/isdn/gigaset/gigaset.h index d34f0023ac..bc5a6294f0 100644 --- a/drivers/isdn/gigaset/gigaset.h +++ b/drivers/isdn/gigaset/gigaset.h @@ -58,7 +58,7 @@ #define MAX_TIMER_INDEX 1000 #define MAX_SEQ_INDEX 1000 -#define GIG_TICK (HZ / 10) +#define GIG_TICK 100 /* in milliseconds */ /* timeout values (unit: 1 sec) */ #define INIT_TIMEOUT 1 -- 2.39.5