diff options
Diffstat (limited to 'drivers/char/q40_keyb.c')
-rw-r--r-- | drivers/char/q40_keyb.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/char/q40_keyb.c b/drivers/char/q40_keyb.c index 7ee9818ef..a0e41b189 100644 --- a/drivers/char/q40_keyb.c +++ b/drivers/char/q40_keyb.c @@ -94,7 +94,7 @@ static unsigned char q40ecl[]= }; -spinlock_t kbd_controller_lock = SPIN_LOCK_UNLOCKED; +static spinlock_t kbd_controller_lock = SPIN_LOCK_UNLOCKED; /* @@ -340,11 +340,10 @@ static int qprev=0; static void keyboard_interrupt(int irq, void *dev_id, struct pt_regs *regs) { - unsigned long flags; unsigned char status; disable_keyboard(); - spin_lock_irqsave(&kbd_controller_lock, flags); + spin_lock(&kbd_controller_lock); kbd_pt_regs = regs; status = IRQ_KEYB_MASK & master_inb(INTERRUPT_REG); @@ -386,7 +385,7 @@ static void keyboard_interrupt(int irq, void *dev_id, struct pt_regs *regs) keyup=1; } exit: - spin_unlock_irqrestore(&kbd_controller_lock, flags); + spin_unlock(&kbd_controller_lock); master_outb(-1,KEYBOARD_UNLOCK_REG); /* keyb ints reenabled herewith */ enable_keyboard(); } |