Date: Fri, 24 Feb 2006 08:25:12 +0100 From: "Norbert Koch" <NKoch@demig.de> To: <freebsd-hackers@freebsd.org> Subject: RE: [PATCH] does ukbd delay break scan codes? Message-ID: <000601c63913$72cf7c00$4801a8c0@ws-ew-3.demig.intra> In-Reply-To: <43FE64CF.6080009@savvis.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello Maksim, yes I too looked at ukbd code and found the same. I already put a patch on the bug list yesterday. In the mean time I compared the ukbd code to that of NetBSD and OpenBSD. Their code is quite different. I expect that the DragenFlyBSD guys may have the same problem, but did not find their cvs web site so far. Norbert > > Maksim Yevmenkin wrote: > > [...] > > >>> I still do not know where it comes from, > >>> but what I found so far is, > >>> that the usb keyboard (or ukbd driver) > >>> seems to delay the break codes for > >>> keys with prefix E0 (which may or may not > >>> have anything to do with my problem). > >>> > >>> E.g., I press Keypad-Enter and see > >>> E0 1C E0 > >>> ^prefix > >>> ^make code > >>> ^prefix > >>> and nothing else. As soon as I press > >>> e.g. Enter (any key works) I see > >>> 9C 1C 9C > >>> ^break code > >>> ^make code > >>> ^delayed break code. > >>> > >>> Does anyone have an idea where that > >>> may come from? > >> > >> > >> i see this to on week old -current. if ukbd(4) delays break code then > >> this might explain state synchronization problem with kbdmux(4). i > >> guess we should start digging into ukbd(4), starting with > >> ukbd_interrupt() to see why this happening. > > > > > > just by looking at the code, i think, that ukbd_check_char() > should also > > return "true" if ks_buffered_char[0] != 0, i.e. try the following > > untested patch > > i have tested the attached patch. it works for me. with this patch usb > keyboard return > > Feb 23 17:30:54 beetle kernel: e0 1c > Feb 23 17:30:54 beetle kernel: e0 9c > > when i press "gray enter" key and ps/2 keyboard return > > Feb 23 17:31:41 beetle kernel: e0 > Feb 23 17:31:41 beetle kernel: 1c > Feb 23 17:31:41 beetle kernel: e0 > Feb 23 17:31:41 beetle kernel: 9c > > also i tried to freeze my keyboards by pressing ctrl+f1 but i can not > reproduce it here. > > thanks, > max >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?000601c63913$72cf7c00$4801a8c0>