Date: Mon, 03 Aug 2009 13:50:02 -0500 From: Nathan Whitehorn <nwhitehorn@freebsd.org> To: Hans Petter Selasky <hselasky@c2i.net> Cc: src-committers@freebsd.org, Bruce Evans <brde@optusnet.com.au>, svn-src-all@freebsd.org, alfred@freebsd.org, rwatson@freebsd.org, nparhar@gmail.com, svn-src-head@freebsd.org, "M. Warner Losh" <imp@bsdimp.com> Subject: Re: svn commit: r195960 - in head/sys/dev/usb: . controller input Message-ID: <4A77315A.3050606@freebsd.org> In-Reply-To: <200908032033.08169.hselasky@c2i.net> References: <20090802192902.GS47463@elvis.mu.org> <20090803.012206.1492586399.imp@bsdimp.com> <20090804032402.J21599@delplex.bde.org> <200908032033.08169.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hans Petter Selasky wrote: > On Monday 03 August 2009 19:46:16 Bruce Evans wrote: > >> On Mon, 3 Aug 2009, M. Warner Losh wrote: >> >>> In message: <200908030827.21108.hselasky@c2i.net> >>> >>> : I see two solutions: >>> : >>> : 1) Disable the timekeeping if no keys are pressed. >>> : >>> : 2) Second option is to use getmicrotime. Actually what I need is just a >>> : millisecond time reference so I know when to repeat the last key. >>> : >>> : Any opinions? DELAY() or getmicrotime() ? >>> >> DELAY(1) is somewhet usable. >> > > I think DELAY(1) is not accurate enough. > > I suggest that the DELAY(1000) is only active while a key is actually pressed. > > See attached patch. Please test and report back. > Having recently written a keyboard driver, it is silly that the keyboard driver itself has to handle key repeat at all -- this kind of thing should be in the general kdb driver, along with AT KBD scancode emulation. Of the four keyboard drivers currently in the tree, three (sunkbd, akbd, ukbd) have a huge amount of code copied and pasted between them in order to emulate an AT keyboard, which are becoming less and less common. -Nathan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A77315A.3050606>