|
@@ -258,12 +258,10 @@ void snd_opl3_timer_func(unsigned long data)
|
|
|
spin_unlock_irqrestore(&opl3->voice_lock, flags);
|
|
|
|
|
|
spin_lock_irqsave(&opl3->sys_timer_lock, flags);
|
|
|
- if (again) {
|
|
|
- opl3->tlist.expires = jiffies + 1; /* invoke again */
|
|
|
- add_timer(&opl3->tlist);
|
|
|
- } else {
|
|
|
+ if (again)
|
|
|
+ mod_timer(&opl3->tlist, jiffies + 1); /* invoke again */
|
|
|
+ else
|
|
|
opl3->sys_timer_status = 0;
|
|
|
- }
|
|
|
spin_unlock_irqrestore(&opl3->sys_timer_lock, flags);
|
|
|
}
|
|
|
|
|
@@ -275,8 +273,7 @@ static void snd_opl3_start_timer(struct snd_opl3 *opl3)
|
|
|
unsigned long flags;
|
|
|
spin_lock_irqsave(&opl3->sys_timer_lock, flags);
|
|
|
if (! opl3->sys_timer_status) {
|
|
|
- opl3->tlist.expires = jiffies + 1;
|
|
|
- add_timer(&opl3->tlist);
|
|
|
+ mod_timer(&opl3->tlist, jiffies + 1);
|
|
|
opl3->sys_timer_status = 1;
|
|
|
}
|
|
|
spin_unlock_irqrestore(&opl3->sys_timer_lock, flags);
|