Date: Sat, 14 Feb 2009 11:31:39 -0500 From: Yoshihiro Ota <ota@j.email.ne.jp> To: Hans Petter Selasky <hselasky@c2i.net>, freebsd-current@freebsd.org Subject: Re: USB2 - keyboard error Message-ID: <20090214113139.0d2cbd1a.ota@j.email.ne.jp> In-Reply-To: <200902141041.28477.hselasky@c2i.net> References: <20090213204112.7b982402.ota@j.email.ne.jp> <200902141041.28477.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 14 Feb 2009 10:41:28 +0100 Hans Petter Selasky <hselasky@c2i.net> wrote: > On Saturday 14 February 2009, Yoshihiro Ota wrote: > > I just installed 8-CURRENT with USB2 kernel config to join the test. > > > > I use a laptop PC and sometime use USB keyboard. > > It was detected as following and it is usable when > > I see FreeBSD login prompt. > > > > ugen0.2: <NEC> at usbus0 > > ushub2: <NEC hub, class 9/0, rev 1.00/1.00, addr 2> on usbus0 > > ushub2: 4 ports with 4 removable, bus powered > > ugen0.3: <Alps Electric> at usbus0 > > ukbd0: <Alps Electric M2452, class 0/0, rev 1.00/1.01, addr 3> on usbus0 > > kbd2 at ukbd0 > > ukbd_set_leds_callback:556: error=USB_ERR_IOERROR > > ukbd_set_leds_callback:556: error=USB_ERR_IOERROR > > > > > > Regular alphabet keys work fine but as soon as I hit Alt-F2 to switch > > to another virtual console (or is it called virtual terminal?), I > > start seeing the above error. Then, keyboard stops responding or > > starts repeating some irregular keys. > > > > This is without X. > > > > How do we begin fixing this issue? > > > > Hi, > > Looks like your keyboard has bug when it crashes on control requests. You can > try slowing down the set leds request. Edit "src/sys/dev/usb2/input/ukbd2.c", > then lookup: > > [UKBD_CTRL_LED] = { > .type = UE_CONTROL, > .endpoint = 0x00, /* Control pipe */ > .direction = UE_DIR_ANY, > .mh.bufsize = sizeof(struct usb2_device_request) + 1, > .mh.callback = &ukbd_set_leds_callback, > .mh.timeout = 1000, /* 1 second */ > }, > > Add: > .interval = 10, /* 10 milliseconds */ > > Try different interval values in the range 10 to 500 ms. > > --HPS It was actually, just in case, .mh.interval = 10, /* 10 milliseconds */ It didn't seem to help. By the way, this is how dmesg look like from 7.1-RELEASE for the save dev. And it is functioning okay on 7.1-RELEASE. uhub2: <vendor 0x0409 product 0x55ab, class 9/0, rev 1.00/1.00, addr 2> on uhub0 uhub2: 4 ports with 4 removable, bus powered ukbd0: <Alps Electric M2452, class 0/0, rev 1.00/1.01, addr 3> on uhub2 kbd2 at ukbd0 Regards, Hiro
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090214113139.0d2cbd1a.ota>