>>> 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.
ah, sweet!
I can confirm that it makes difference.
Before I had to reload usbkbd module to make remote work.
Now, I can reload usbhid module to make remote work.
So it is progress.
However, once I unplug remote and plug it in, I still need to reload
either of the modules. There does not seems to more sleep routines in
'core' and 'host' directories, so I guess it is something else.
# diff -u input/hid-core.c{-backup,}
--- input/hid-core.c-backup 2006-12-02 22:46:34.000000000 +0100
+++ input/hid-core.c 2006-12-02 22:47:19.000000000 +0100
@@ -1344,6 +1344,7 @@
static int hid_set_idle(struct usb_device *dev, int ifnum, int report,
int idle)
{
+ return 0;
return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
HID_REQ_SET_IDLE, USB_TYPE_CLASS | USB_RECIP_INTERFACE,
(idle << 8) | report,
ifnum, NULL, 0, USB_CTRL_SET_TIMEOUT);
--
Adam Sulmicki
http://www.eax.com The Supreme Headquarters of the 32 bit registers
-------------------------------------------------------------------------
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
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel