Here's a strage story of a laptop and a USB mouse: the hand moves the
mouse left and right, but on the screen the mouse moves up and down.
The hand clicks on one of the buttons, but the mouse on the screen
moves right.

The mouse works perfectly under windows on this laptop, and even under
linux on different machines.  But on this machine each and every
kernel I tried (2.4 and 2.6) behaved this way.

After digging around in the usbmouse driver I noticed that the cause
of the problem might be that the data received in the interrupt
handler is off by one byte.  After hacking usb_mouse_irq() like this

-       signed char *data = mouse->data;
+       signed char *data = mouse->data + 1;

the mouse worked perfectly.  Obviously this is not a proper fix, and
I'm hoping somebody more qualified in the USB internals can point out
the root cause.  Maybe it's something to do with the host controller?
(It's OHCI on the laptop, and UHCI on the other machine I tried)  But
other USB devices seem to work OK.

Any ideas?

Thanks,
Miklos

Mouse: Genius PowerScroll USB
Laptop: HP nc4000
Kernel version: 2.6.7

lsusb:
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 002: ID 0458:0018 KYE Systems Corp. (Mouse Systems)
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

lspci:
00:12.0 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
        Subsystem: Compaq Computer Corporation: Unknown device 005a
        Flags: bus master, medium devsel, latency 64, IRQ 10
        Memory at 98380000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [40] Power Management version 2

00:12.1 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
        Subsystem: Compaq Computer Corporation: Unknown device 005a
        Flags: bus master, medium devsel, latency 64, IRQ 10
        Memory at 98400000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [40] Power Management version 2

00:12.2 USB Controller: NEC Corporation USB 2.0 (rev 04) (prog-if 20 [EHCI])
        Subsystem: Compaq Computer Corporation: Unknown device 005a
        Flags: bus master, medium devsel, latency 64, IRQ 10
        Memory at 98480000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [40] Power Management version 2



-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to