Hans de Goede writes: > Hi, > > On 28-05-16 14:00, Ben Gamari wrote: >> Here is a patchset adding support for the Alps SS5 touchpad hardware shipped >> with the Dell Latitude E7470. The protocol is similar to that used by the SS4 >> v2 devices, but with additional support for a touchstick. >> >> The touchpad exhibits slightly inconsistent behavior when single-finger >> contacts are released while a button is being held. This leads to extremely >> unpleasant jumps in pointer position, especially during drag-and-drop >> operations. This is resolved by patch 2/4. >> >> One minor outstanding issue is the high speed of the touchstick. Previous >> touchstick drivers have taken the extremely unfortunate approach of scaling the >> input device space to work-around this (often sacrificing device resolution in >> the process). I've started another thread on linux-input (see "Should >> touchsticks really be relative input devices?") to discuss options for >> resolving this. > > The problem with touchstick's is that they have a wildly varying sensitivity, > unfortunately this seems to be laptop model specific, e.g. one generation > of alps tracksticks can be slow on some models and fast on others. > Right. > We've entries in udev's hwdb for known troublesome models, see: > /lib/udev/hwdb.d/70-pointingstick.hwdb > Thanks, I'll submit a patch when I find a reasonable value. > On a modern Linux distro. If you add an entry for your laptop there, with a > slow-down factor and are using xf86-input-libinput as driver for the > touchstick, then things should work. > Apologies for going slightly out of kernel-land but... What exactly does this end up adjusting in libinput? I've been entirely unable to get any control over the speed of the touchstick with xinput. Currently the properties look like, $ xinput list-props 14 Device 'AlpsPS/2 ALPS DualPoint Stick': Device Enabled (137): 1 Coordinate Transformation Matrix (139): 0.010000, 0.000000, 0.000000, 0.000000, 0.010000, 0.000000, 0.000000, 0.000000, 0.010000 libinput Accel Speed (631): 0.000010 libinput Accel Speed Default (632): 0.000000 libinput Accel Profiles Available (633): 1, 1 libinput Accel Profile Enabled (634): 1, 0 libinput Accel Profile Enabled Default (635): 1, 0 libinput Natural Scrolling Enabled (636): 0 libinput Natural Scrolling Enabled Default (637): 0 libinput Send Events Modes Available (257): 1, 0 libinput Send Events Mode Enabled (258): 0, 0 libinput Send Events Mode Enabled Default (259): 0, 0 libinput Left Handed Enabled (638): 0 libinput Left Handed Enabled Default (639): 0 libinput Scroll Methods Available (640): 0, 0, 1 libinput Scroll Method Enabled (641): 0, 0, 1 libinput Scroll Method Enabled Default (642): 0, 0, 1 libinput Button Scrolling Button (643): 2 libinput Button Scrolling Button Default (644): 274 libinput Middle Emulation Enabled (645): 0 libinput Middle Emulation Enabled Default (646): 0 Device Node (260): "/dev/input/event9" Device Product ID (261): 2, 8 libinput Drag Lock Buttons (647): libinput Horizonal Scroll Enabled (262): 1 Yet none of my fiddling seems to have had any effect on the sensitivity of the device. Cheers, - Ben