# 2.6 Kernel and USB device problems

## diomedies

OK, here's my whacked-out problem. I'm currently running the gentoo-dev-sources version of kernel 2.6.0-beta11 on a Compaq Evo (AKA "evil") 800C. previously, i was running the gentoo 2.4.20 kernel and my USB devices,  a wireless IBM optical mouse with scroll-wheel and an IBM model M keyboard (oh how I love that mechanical beast) thats connected to a Y-Mouse ps/2 to USB converter. While running the 2.4 kernel, these devices worked farily well, the keyboard worked flawlessly and the mouse worked, except for the scroll wheel....i could never ge that to work for some reason.....anyhoo,  I've made the proper adjustments to the X config file (see below) and I have full HID support compiled into the kernel as a module which loads with out any errors. now on to the funky stuff the devices are doing......

in bash and in X, the keyboard works but it severly lags. i can type on it if i type at about 5 wpm.....which is unbarealy slow....even more interesting is in x, the keyboard also causes the mouse to behave erraticly from time to time, shooting the pointer 1/2 way across the screen or into the lower right hand corner when i barely touch the thouchpad or "nipple" in the middle of the keyboard . This only occurs when i actually try to move the pointer though... the USB mouse is completely dead in X, despite my modifing the XF86Config file like so:

(these are only the lines i added)

in the "ServerLayout" section:

InputDevice     "mouse1"    "SendCoreEvents"

then i made a device section for the mouse:

Section  "InputDevice"

          Identifier       "mouse1"

          Driver            "mouse"

          Option           "Protocol"     "auto"

          Option           "Device"        "/dev/usbmouse"

          Option           "ZAxisMapping"     "4 5"

EndSection

X has this 30 second or so lag before the pointer will move, which i assume is X trying to figure out what protocol mouse1 should be using.....i tried just setting the protocol for mouse 1 to ps/2 but all that did was eliminate most of the hang when X starts and leave me with a still very dead mouse.....

I also checked to make sure /dev/usbmouse exists and it does, and it points to /dev/input/mice like it should.......so what is going on with my system? and does anyone have any suggestions?

----------

## zfc-tinkerer

In the 2.6 kernels, I've found that just setting the mouse in x to /dev/mouse works (both my touchpad and usbmouse seem to be considered /dev/mouse, so when I move or click with either, the computer responds correctly).  I would suggest rather than having core pointer and mouse just having mouse and using /dev/mouse for the device (the default in the xf86config program).

The keyboard I can't help with, but if your mouse and keyboard are entering the computer together, maybe fixing the mouse will also fix the keyboard?

----------

## mike4148

Are you using the same host controller module(s) (uhci/alt, ohci, ehci) as you did with 2.4?

----------

## diomedies

Nevermind, I fixed it.

----------

## AllTom

Uh, care to tell us how?  :Laughing: 

~Tom

----------

## dkaplowitz

Yeah, I'd like to know how you fixed this too. I have a usb mouse that's not loading since I upgraded to 2.6.

----------

## HighOnBonsai

https://forums.gentoo.org/viewtopic.php?t=121289

Still working on it, but maybe solved.

Christopher

----------

## iVai

I had a similar problem, what i had to do was enable ohci in the kernel.  I had ehci and uhci, but they didn't work very well, so i enabled ohci and my keyboard works fine now w/o any lag.

----------

## hazelnusse

I'm having some trouble getting my mouse wheel to work and I was wondering if I could compare my kernel options to yours. This is what I have, and so far I have been unable to see any wheel output in cat /dev/psaux or cat /dev/mouse when I move the wheel. I get output from almost all the other buttons, but nothing from the wheel movement. Here are my settings:

Code:

```

CONFIG_USB_DEVICEFS=y

CONFIG_USB_EHCI_HCD=y

CONFIG_USB_UHCI_HCD=y

CONFIG_USB_STORAGE=y

CONFIG_USB_HID=y

CONFIG_USB_HIDINPUT=y

```

I have a 2.6.9-gentoo-r9 kernel from gentoo-dev-sources, and my mouse is a MX700.  I have no problem using other USB devices such as an external hard drive or jump drive, but no luck on getting the mouse wheel to work.  I have tried imwheel, and all the various hacks out there and can get responses from the thumb buttons, but nothing from the wheel.  Here are my X settings:

I think these are the correct options, from what I have read, but I have had no luck with anything as far as the wheel goes. If you have any insight, I would greatly appreciate it. Thanks in advance. 

XF86Config:

```

    Identifier  "Mouse1"

    Driver "mouse"

    Option "Protocol"   "ExplorerPS/2"

    Option "Device"     "/dev/psaux"

    Option "ZAxisMapping"   "6 7"

    Option "Buttons"    "7"

    Option "Emulate3Buttons" "true"

    Option "Emulate3Timeout" "70"

    Option "SendCoreEvents" "true"

```

I have tried with and without the Emulate Options, and the SendCore option and it doesn't seem to do anything.

~/.xinitrc :

```

usr/X11R6/bin/xmodmap -e "pointer = 1 2 3 6 7 4 5"

imwheel -k -p -b "67" -f

exec startkde

```

.imwheelrc :

```

".*"

,Up, Alt_L|Left

,Down, Alt_R|Right

```

When I run xev, I get no response from any wheel movement.  My wheel works in Windows, so I know it isn't broken.  

Finally, a few log messages that seem like they might be relevant:

/var/log/kernel/current :

```

...

Dec  8 16:15:19 [kernel] atkbd.c: Spurious ACK on isa0060/serio0. Some program,

like XFree86, might be trying access hardware directly.

...

Dec  9 01:56:18 [kernel] serio: i8042 AUX port at 0x60,0x64 irq 12

Dec  9 01:56:18 [kernel] serio: i8042 KBD port at 0x60,0x64 irq 1

Dec  9 01:56:18 [kernel] mice: PS/2 mouse device common for all mice

Dec  9 01:56:18 [kernel] input: AT Translated Set 2 keyboard on isa0060/serio0

Dec  9 01:56:18 [kernel] input: ImPS/2 Generic Wheel Mouse on isa0060/serio1

...

Dec  9 02:52:04 [kernel] ehci_hcd 0000:00:02.2: USB 2.0 enabled, EHCI 1.00, driv

er 2004-May-10

Dec  9 02:52:04 [kernel] hub 1-0:1.0: USB hub found

Dec  9 02:52:04 [kernel] hub 1-0:1.0: 6 ports detected

Dec  9 02:52:04 [kernel] USB Universal Host Controller Interface driver v2.2

Dec  9 02:52:04 [kernel] Initializing USB Mass Storage driver...

Dec  9 02:52:04 [kernel] usbcore: registered new driver usb-storage

Dec  9 02:52:04 [kernel] USB Mass Storage support registered.

Dec  9 02:52:04 [kernel] usbcore: registered new driver usbhid

Dec  9 02:52:04 [kernel] drivers/usb/input/hid-core.c: v2.0:USB HID core driver

...

```

/var/log/XFree86.0.log

```

(**) Option "Protocol" "ExplorerPS/2"

(**) Mouse1: Protocol: "ExplorerPS/2"

(**) Option "SendCoreEvents" "true"

(**) Mouse1: always reports core events

(**) Option "CorePointer"

(**) Mouse1: Core Pointer

(**) Option "Device" "/dev/psaux"

(**) Option "Buttons" "7"

(**) Option "Emulate3Buttons" "true"

(**) Option "Emulate3Timeout" "70"

(**) Mouse1: Emulate3Buttons, Emulate3Timeout: 70

(**) Option "ZAxisMapping" "6 7"

(**) Mouse1: ZAxisMapping: buttons 6 and 7

(**) Mouse1: Buttons: 7

(II) Keyboard "Keyboard1" handled by legacy driver

(II) XINPUT: Adding extended input device "Mouse1" (type: MOUSE)

(II) Mouse1: ps2EnableDataReporting: succeeded

```

Anybody have any ideas on how to fix this?  Thanks in advance.

Dale

----------

