Messages in this thread | | | Date | Wed, 8 Oct 2003 10:23:46 +0200 | From | Jurriaan <> | Subject | Re: keyboard repeat speed went nuts since 2.6.0-test5, even in 2.6.0-test6-mm4 |
| |
From: Vojtech Pavlik <vojtech@suse.cz> Date: Tue, Oct 07, 2003 at 10:40:56PM +0200 > On Tue, Oct 07, 2003 at 10:33:16PM +0200, Jurriaan wrote: > > I like my keyboard fast (must be from playing a lot of angband). > > > > In 2.6.0-test5, after '/sbin/kbdrate -r 30 -d 250', I get some 2000 > > characters in a minute (pressing n continuously, stopwatch in hand). > > In 2.6.0-test6 and 2.6.0-test6-mm4, after '/sbin/kbdrate -r 30 -d 250', > > I get some 820 characters in a minute. > > > > 30 cps != 800/60 s, that's more like half that rate. > > > > Booting with or without atkbd_softrepeat=1 on the kernel commandline > > makes no difference at all. > > It's a bug. I have a fix, it went through LKML already, but Linus > didn't merge it yet. I'll be resending it. > > > It's not only the repeat-speed that has gone down, the delay before > > repeat kicks in is notably slower as well. This is perhaps even more > > frustrating, but harder to measure :-( > > > > This is on a plain Chicony KB-7903 PS/2 keyboard. It is connected via a > > Vista Rose KVM to a VIA KT400 chipset motherboard. > > > > Any patches to test are very welcome here. > > Fix attached. > Sorry, but that fix is already in 2.6.0-test6-mm4; that's why I tested that version...
Anyway, I added some printk's like this:
case EV_REP:
printk( KERN_INFO "atkbd: atkbd_softrepeat %d\n", atkbd_softrepeat); if (atkbd_softrepeat) return 0;
i = j = 0; while (i < 32 && period[i] < dev->rep[REP_PERIOD]) i++; while (j < 4 && delay[j] < dev->rep[REP_DELAY]) j++; dev->rep[REP_PERIOD] = period[i]; dev->rep[REP_DELAY] = delay[j]; printk( KERN_INFO "atkbd: period %d delay %d\n", period[i], delay[j]); param[0] = i | (j << 5); atkbd_command(atkbd, param, ATKBD_CMD_SETREP);
return 0;
And even if my command-line for the kernel looks like this:
Kernel command line: root=/dev/md3 video=matroxfb:xres:1600,yres:1360,depth:16,pixclock:4116,left:304,right:64,upper:46,lower:1,hslen :192,vslen:3,fv:90,hwcursor=off hdb=scsi apm=power-off atkbd_softrepeat=1
I still see this:
:kbdrate -r 50 -d 100 atkbd: atkbd_softrepeat 0 atkbd: period 33 delay 250 atkbd: atkbd_softrepeat 0 atkbd: period 33 delay 250 Typematic Rate set to 30.3 cps (delay = 250 ms)
and I still get only 800 cpm, which means 14 cps or so. Why it atkbd_softrepeat still 0 with this command-line?
Kind regards, Jurriaan -- How should I know if it works? That's what beta testers are for. I only coded it. Attributed to Linus Torvalds, somewhere in a posting Debian (Unstable) GNU/Linux 2.6.0-test6-mm4 4276 bogomips 0.27 0.14 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |