--- clean/drivers/char/keyboard.c Tue Feb 15 00:31:14 2000 +++ linux/drivers/char/keyboard.c Fri May 5 23:13:52 2000 @@ -205,6 +208,23 @@ char up_flag = down ? 0 : 0200; char raw_mode; + /* + * Fix for Toshiba Satellites. Toshiba's like to repeat + * "key down" event for A in combinations like shift-A. + * Thanx to Andrei Pitis . + */ + static int prev_scancode = 0; + static int stop_jiffies = 0; + + /* new scancode, trigger delay */ + if (scancode != prev_scancode) stop_jiffies = jiffies; + else if (jiffies - stop_jiffies >= 10) stop_jiffies = 0; + else { + printk( "Keyboard glitch detected, ignoring keypress\n" ); + return; + } + prev_scancode = scancode; + pm_access(pm_kbd); do_poke_blanked_console = 1;