Hi,
There is some problem with hid_report_size() function
and Logitech USB receiver in /usr/src/sys/dev/usb/ums.c.
The returned value is 14 but it should be 8.
This results in subsamling mouse data and jerky cursor movement.
I have tested this workaround patch for
Logitech® Cordless Desktop® MX™ 3100
and it works fine now.
Nenad
*** ums.c.1.80 2006-03-06 09:41:19.000000000 +0100
--- ums.c.1.81 2006-03-06 09:47:27.000000000 +0100
***************
*** 313,318 ****
--- 313,325 ----
hid_input, &sc->sc_loc_btn[i-1], 0);
sc->sc_isize = hid_report_size(desc, size, hid_input, &sc->sc_iid);
+ #define LOGITECH_STRING "Logitech USB Receiver"
+ #define LOGITECH_STRLEN 21
+ #define LOGITECH_SC_ISIZE 8
+ if(!strncmp(devinfo,LOGITECH_STRING, LOGITECH_STRLEN)){
+ printf("%s: Logitech USB Receiver workaround\n", USBDEVNAME(sc->sc_dev));
+ sc->sc_isize=LOGITECH_SC_ISIZE; /* Logitech Wireless USB Receiver reports 14, it should be 8! */
+ }
sc->sc_ibuf = malloc(sc->sc_isize, M_USB, M_NOWAIT);
if (!sc->sc_ibuf) {
printf("%s: no memory\n", USBDEVNAME(sc->sc_dev));
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "[EMAIL PROTECTED]"