On Sat, 2 Dec 2006, Adam Sulmicki wrote:

> On Sat, 2 Dec 2006, Alan Stern wrote:
> 
> > The usbmon log on that web site don't show what happens when you unload
> > the drivers.  And the dmesg log doesn't say what you are doing at each
> > stage.
> 
> sorry about that. here are complete annoatated logs of :
>       reboot
>       modprobe    usbhid
>       modprobe -r usbhid
>       modprobe    usbkbd
>       modprobe -r usbkbd
>       modprobe    usbhid
> 
> http://www.missl.cs.umd.edu/~adam/cy/cy.complete.usbmon.txt
> http://www.missl.cs.umd.edu/~adam/cy/cy.complete.dmesg.txt

There isn't much difference between what usbhid does and what usbkbd does.  
In fact, the only differences are these: usbhid does a Set Idle and a Get
Report Descriptor and usbkbd doesn't.  Both of them apparently succeed,
but then the device stops responding.

Now, there's no way to avoid doing the Get Report Descriptor -- without
that usbhid wouldn't know how to communicate with the device at all; it
wouldn't even know what the device did!  But you can eliminate the Set
Idle and see what happens.

Do you feel up to patching your kernel?  The change needed is a simple 
one.  In the source file drivers/usb/input/hid-core.c, find the 
hid_set_idle() routine and simply stick a "return 0;" line at its start.

Alan Stern


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to