Bug 43931 - Touchpad recognized as mouse on Dell Latitude XT
Summary: Touchpad recognized as mouse on Dell Latitude XT
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Input Devices (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_input-devices
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-27 18:40 UTC by Roman Šmakal
Modified: 2017-02-20 21:00 UTC (History)
3 users (show)

See Also:
Kernel Version: 3.11
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Roman Šmakal 2012-06-27 18:40:28 UTC
Good day, i have LatitudeXT laptop with touchpad not properly recognized. No mouse was plugged into laptop, but /proc/bus/input/devices reports following:
I: Bus=0011 Vendor=0002 Product=0001 Version=0000
N: Name="PS/2 Generic Mouse"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input10
U: Uniq=
H: Handlers=mouse2 event10 
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0
B: REL=3

Tapping actually works though, but system does not load synaptics driver, so i have no finger-scrolling and such. If i can add some more logs, im on it.
Thanks for a nice job.
Comment 1 whitelynx 2013-09-27 07:22:26 UTC
I have the same laptop, and am running into the same issue.

# uname -a
Linux archsd 3.11.1-2-ARCH #1 SMP PREEMPT Sun Sep 22 19:45:00 CEST 2013 x86_64 GNU/Linux


I also noticed that I get the following errors from the 'psmouse' driver in 'dmesg':

# dmesg | grep psmouse
[   10.742819] psmouse serio1: alps: Unknown ALPS touchpad: E7=73 00 14, EC=10 00 64
[   12.856723] psmouse serio1: Failed to enable mouse on isa0060/serio1


This issue was mentioned by alexromanescu (and then later picked up by libondam-0) on the Ubuntu bug at https://bugs.launchpad.net/ubuntu/+source/linux/+bug/606238?comments=all; it doesn't seem like any conclusion was reached there, but it was suggested that adding the following line to alps_model_data[] in 'alps.c' at least allowed the touchpad to be detected, and got two-finger scrolling working (though the trackpoint stick was broken by this):

{ { 0x73, 0x00, 0x14 }, 0x00, ALPS_PROTO_V2, 0xf8, 0xf8, ALPS_DUALPOINT | ALPS_FW_BK_2 }, /* Dell Latitude XT */

I'm going to try making this change and see what state it leaves the touchpad in.
Comment 2 whitelynx 2013-09-27 08:08:11 UTC
Adding that line, recompiling the driver, and reloading it did cause it to be detected correctly, and to get picked up by the X11 'synaptics' driver. However, the pointer stick is still in the same state described in the Ubuntu bug; when used, the stick causes the pointer to jump around the screen randomly, and to send random click events.

If the stick isn't used, the touchpad itself seems to be working well for the most part; the biggest exception is two-finger scrolling, which seems to be completely inoperable, even when trying to use two-finger emulation. On the other hand, edge scrolling, middle-click emulation, etc. work fine. I did notice that when looking at the output of `xinput query-state 'AlpsPS/2 ALPS DualPoint TouchPad'`, the last 2 valuators never change their values:

# xinput query-state 'AlpsPS/2 ALPS DualPoint TouchPad'
2 classes :
ButtonClass
	button[1]=up
	button[2]=up
	button[3]=up
	button[4]=up
	button[5]=up
	button[6]=up
	button[7]=up
	button[8]=up
	button[9]=up
	button[10]=up
	button[11]=up
	button[12]=up
ValuatorClass Mode=Relative Proximity=In
	valuator[0]=752
	valuator[1]=118
	valuator[2]=0
	valuator[3]=-79
Comment 3 whitelynx 2013-10-03 01:18:18 UTC
In my testing, it seems that the value reported by evdev for ABS_PRESSURE is acting more like width than pressure; it is pretty consistently below 80 whenever using one finger, and over 100 whenever using two fingers. Nothing reported by evtest (or via evdev events when using python2-evdev) seems to actually correspond to pressure; is it possible we just aren't passing the pressure data from the touchpad on to evdev?
Comment 4 Marcos Souza 2017-02-20 21:00:25 UTC
Per Pali's email[1], this is fixed since 2013.

[1]

Note You need to log in before you can comment on or make changes to this bug.