aboutsummaryrefslogtreecommitdiffstats
path: root/sound/drivers/mpu401/mpu401_uart.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/drivers/mpu401/mpu401_uart.c')
-rw-r--r--sound/drivers/mpu401/mpu401_uart.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/drivers/mpu401/mpu401_uart.c b/sound/drivers/mpu401/mpu401_uart.c
index ee67b522d259..8687ae3c66b8 100644
--- a/sound/drivers/mpu401/mpu401_uart.c
+++ b/sound/drivers/mpu401/mpu401_uart.c
@@ -133,12 +133,13 @@ irqreturn_t snd_mpu401_uart_interrupt(int irq, void *dev_id, struct pt_regs *reg
133static void snd_mpu401_uart_timer(unsigned long data) 133static void snd_mpu401_uart_timer(unsigned long data)
134{ 134{
135 struct snd_mpu401 *mpu = (struct snd_mpu401 *)data; 135 struct snd_mpu401 *mpu = (struct snd_mpu401 *)data;
136 unsigned long flags;
136 137
137 spin_lock(&mpu->timer_lock); 138 spin_lock_irqsave(&mpu->timer_lock, flags);
138 /*mpu->mode |= MPU401_MODE_TIMER;*/ 139 /*mpu->mode |= MPU401_MODE_TIMER;*/
139 mpu->timer.expires = 1 + jiffies; 140 mpu->timer.expires = 1 + jiffies;
140 add_timer(&mpu->timer); 141 add_timer(&mpu->timer);
141 spin_unlock(&mpu->timer_lock); 142 spin_unlock_irqrestore(&mpu->timer_lock, flags);
142 if (mpu->rmidi) 143 if (mpu->rmidi)
143 _snd_mpu401_uart_interrupt(mpu); 144 _snd_mpu401_uart_interrupt(mpu);
144} 145}