Messages in this thread | | | From | "Eric Dumazet" <> | Subject | Re: Toshiba Satellite 2595XDVD | Date | Wed, 1 Dec 1999 21:31:48 -1000 |
| |
Hello Andrei
I confirm that I have this same problem on my Toshiba Satellite 4080XCDT, with Windows 98 on it ! So this is a hardware problem, and Toshiba don't provide a patch or something even for windows. In fact I have a lot of other problems with this machine. USB for example... my webcam sometime has to be unplugged to continue to work Same thing for the Kodac DC240 camera....
I have also a ISDN card and if i try to copy something on the diskette, my communication breaks immediatly...
----- Original Message ----- From: Andrei Pitis <pink@roedu.net> To: <linux-kernel@vger.rutgers.edu> Sent: Tuesday, November 30, 1999 6:22 PM Subject: Toshiba Satellite 2595XDVD
> > Hi everybody, > > I am not sure to whom should I address this, it's about a buggy > keyboard controller (I guess) found on <subj> laptops that has a > peculiar behavior with some key sequences. Specifically, when you > press a shift (ctrl, alt, shift) and a key - (mostly when you play a > lot with shifts, like in emacs :-)) - sometimes the controller ignores > the repeat delay and repeats the key, sending very close (tens of > miliseconds) key_down interrups (kbd MAKEs). > > Since this become very frustrating in time (imagine an emacs where > meta or control sequences get out of hand) I have modified the > handle_scancode function in drivers/char/keyboard.c to ack like a > forced kbd delay. In other words, for each new (different from the > previous one) scancode it sets up a delay (of 200 ms) in which it > ignores the same scancode, if received within this window. > > I think this may as well be left there, I cannot think of things that > might be broken by it, the second aparition of a scancode being > always protected by the kdb delay (min 250 ms on PC kbds) - on sane PC > kbds, at least... therefore the 200 ms does not do any harm to the > normal kbds :-) > > Anyway, I would be grateful if the person in charge (Linus?) would be > so kind to accept this patch, so I will not be doomed to patch by hand > each and every kernel from now on :-)) > > The code is as follows, and should be placed immediately after the > variable declarations in the abovementioned function: > > /* > * Begin patch for Toshiba Satellite 2595XDVD. Under some > * circumstances, its keyboards behaves like ignoring the > * kbd repeat delay. This happens in conjunction with shift > * keys (ctrl, alt, shift) and leads to undesirable repeat > * of a key even if pressed briefly. Fix it by ignoring any > * subsequent occurence of the second identical scancode for > * 200 ms. IMO, this doesn't break anything on a good keyboard. > */ > static int prev_scancode = 0; > static int stop_jiffies = 0; > > /* new scancode, trigger delay */ > if (scancode != prev_scancode) > stop_jiffies = jiffies; > > /* same scancode, accept only after the delay */ > else if (jiffies - stop_jiffies >= 20) > stop_jiffies = 0; > > /* glitch! bail out... */ > else > return; > > prev_scancode = scancode; > /* End Toshiba patch. */ > > > > Thanks! > -- > Andrei Pitis > pink@gnu.org > pink@roedu.net > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.rutgers.edu > Please read the FAQ at http://www.tux.org/lkml/ >
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |