I have a Thinkpad 600x with an external keyboard and mouse. Its old technology, so the keyboard and mouse are both PS/2 devices and connect via a splitter cable to the single PS/2 port on the back. The mouse has a scroll wheel. The 600x runs Archlinux and no matter what I did I’ve never been able to get the scroll wheel on the mouse to work.
Sure, I’ve added the ZAxisMapping line to xorg.conf, and I’ve tried both the PS/2 and Imps/2 driver. But it never worked. It’s been like this for years and I’ve just put up with the fact that the scroll wheel doesn’t work.
So I had another go at it. I found some posts that suggested that the Trackpoint driver interferred with the external mouse driver (all part of the linux psmouse driver). Years ago I had seen posts about disabling the trackpoint on Thinkpad 600s (the 600, 600e and 600x should be much the same) if your trackpoint had broken … or you had no keyboard attached.
Given that this 600x sits permanently on a desk (hence I rarely use the trackpoint), I thought I’d try disabling the trackpoint. There are notes here about how to get into the low level CMOS editor of the BIOS . If you’re wondering how to get to the BIOS, turn the Thinkpad off, hold the F1 key and turn it on until you see the BIOS screens. On mine the 020h offset in the CMOS had an original value of 00, so I changed it to 01 as per that website.
Then I changed the relevant part of my xorg.conf to:
Option "Protocol" "ImPS/2" # Auto detect
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5"
I found that using the PS/2 protocol did not work. You need the ImPS/2 thing (at least for my mouse).
Restart your X server and it should be all good.
I actually use this machine as the ‘master’ for synergy2, so I can finally use the scroll wheel on a whole heap of hosts.
NB: the cheap way around this problem would be simply to use a USB mouse … but my PS/2 mouse still works OK.