Commit 29365575 authored by Vojtech Pavlik's avatar Vojtech Pavlik

Fix the Shift-PgUp problem again, and hopefully for good.

parent a9e3f964
...@@ -161,7 +161,7 @@ static int i8042_command(unsigned char *param, int command) ...@@ -161,7 +161,7 @@ static int i8042_command(unsigned char *param, int command)
param[i] = ~i8042_read_data(); param[i] = ~i8042_read_data();
else else
param[i] = i8042_read_data(); param[i] = i8042_read_data();
dbg("%02x <- i8042 (return)\n", param[i]); dbg("%02x <- i8042 (return)", param[i]);
} }
spin_unlock_irqrestore(&i8042_lock, flags); spin_unlock_irqrestore(&i8042_lock, flags);
...@@ -407,10 +407,10 @@ static void i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs) ...@@ -407,10 +407,10 @@ static void i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs)
} }
if (data > 0x7f) { if (data > 0x7f) {
if (i8042_last_e0 && (data == 0xaa || data == 0xb6))
set_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen);
if (test_and_clear_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen)) { if (test_and_clear_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen)) {
serio_interrupt(&i8042_kbd_port, 0xf0, dfl); serio_interrupt(&i8042_kbd_port, 0xf0, dfl);
if (i8042_last_e0 && (data == 0xaa || data == 0xb6))
set_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen);
data = i8042_unxlate_table[data & 0x7f]; data = i8042_unxlate_table[data & 0x7f];
} }
} else { } else {
......
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
#ifdef DEBUG #ifdef DEBUG
static unsigned long i8042_start; static unsigned long i8042_start;
#define dbg_init() do { i8042_start = jiffies; } while (0); #define dbg_init() do { i8042_start = jiffies; } while (0);
#define dbg(format, arg...) printk(KERN_DEBUG __FILE__ ": " format "[%d]\n" ,\ #define dbg(format, arg...) printk(KERN_DEBUG __FILE__ ": " format " [%d]\n" ,\
## arg, (int) (jiffies - i8042_start)) ## arg, (int) (jiffies - i8042_start))
#else #else
#define dbg_init() do { } while (0); #define dbg_init() do { } while (0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment