On Thursday 06 July 2006 20:15, Arnaud Quette wrote: > a good try, and amount of effort. > Sadly, notifications are on the PIPE_INTERRUPT
Ok, let's do it again. HIDGetEvents() calls libusb_get_interrupt() with size=20 (hardcoded), which calls usb_interrupt_read(), then usb_urb_transfer(), which sets urb.buffer_length=20, going down the ioctl (as uurb), where the kernel urb struct gets urb.transfer_buffer_length=20. Then, uhci_submit_interrupt() checks that field with -------------------- if (urb->transfer_buffer_length > usb_maxpacket(urb->dev, urb->pipe, usb_pipeout(urb->pipe))) return -EINVAL; -------------------- What is the endpoint max packet size? According to /proc/bus/usb/devices C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0463 ProdID=ffff Rev= 1.00 S: Manufacturer=MGE UPS SYSTEMS S: Product=Evolution S: SerialNumber=AF3G03062 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 40mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=(none) E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=20ms Assuming that MxPS means max packet size, it seems to be 8, which is lower than 20, and therefore it looks like the EINVAL error comes from there. Am I going in the right direction this time? > If something is not working, you can try to reset the communication: power > off the UPS, then unplug its power cable, wait (at least) 10 seconds and > replug/restart all. Well, that's something I'd like to avoid, since all the institution servers are fed by the UPS. Cheers, Rodrigo -- *** Rodrigo Martins de Matos Ventura <[EMAIL PROTECTED]> *** Web page: http://www.isr.ist.utl.pt/~yoda *** Teaching Assistant and PhD Student at ISR: *** Instituto de Sistemas e Robotica, Polo de Lisboa *** Instituto Superior Tecnico, Lisboa, PORTUGAL *** PGP fingerprint = 0119 AD13 9EEE 264A 3F10 31D3 89B3 C6C4 60C6 4585 _______________________________________________ Nut-upsuser mailing list Nut-upsuser@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/nut-upsuser