Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 318567 - ALPS touchpad in Dell Latitude E6510 not recognized by kernel 2.6.33
Summary: ALPS touchpad in Dell Latitude E6510 not recognized by kernel 2.6.33
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL: https://bugzilla.kernel.org/show_bug....
Whiteboard:
Keywords: InVCS
Depends on:
Blocks:
 
Reported: 2010-05-05 10:13 UTC by Thomas
Modified: 2012-03-12 22:33 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Add the signature of the new ALPS touchpad to the alps driver (patch,607 bytes, patch)
2010-05-05 10:19 UTC, Thomas
Details | Diff
Stripped Patches + shell script to batch patch (Version 0.7) (ALPS_patches_v0.7.tar.xy,13.20 KB, application/x-gzip)
2011-09-28 09:41 UTC, Sven Eden
Details
(Corr) Stripped Patches + shell script to batch patch (Version 0.7) (ALPS_patches_v0.7.tar.bz2,12.01 KB, application/x-bzip2)
2011-09-28 09:45 UTC, Sven Eden
Details
Stripped Patches + shell script to batch patch (Version 0.9) (ALPS_patches_v0.9.tar.bz2,12.08 KB, application/x-bzip2)
2011-10-02 13:56 UTC, Sven Eden
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas 2010-05-05 10:13:52 UTC
The ALPS touchpad in Dell Latitude E6510 notebooks is not recognized by kernel 2.6.33 (and earlier).  I  think, this is already reported upstream, but it would be nice, if you could include the attached patch to the collection of Gentoo-Sources patches.

Reproducible: Always
Comment 1 Thomas 2010-05-05 10:19:50 UTC
Created attachment 230417 [details, diff]
Add the signature of the new ALPS touchpad to the alps driver
Comment 2 Thomas 2010-05-05 10:21:46 UTC
The patch abv is against gentoo-sources-2.6.33-r1.
Comment 3 Mike Pagano gentoo-dev 2010-05-12 12:34:28 UTC
Can you tell me where you submitted this?
Comment 5 Mike Pagano gentoo-dev 2010-05-19 14:03:21 UTC
This patch was reverted Linus' upstream tree in the link in comment #4
Comment 7 Stefano 2010-05-24 21:27:57 UTC
This is actually also a problem in E6410, it is recognized as a standard PS/2 device (therefore, no scrolling, no double touch, etc)

From dmesg:
[    1.150223] PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
[    1.151001] i8042.c: Warning: Keylock active.
[    1.152480] serio: i8042 KBD port at 0x60,0x64 irq 1
[    1.152768] serio: i8042 AUX port at 0x60,0x64 irq 12
[    1.153111] mice: PS/2 mouse device common for all mice

From:
$ hal-device | grep -B 15 input.x11_driver

26: udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX_port_logicaldev_input'
  info.subsystem = 'input'  (string)                                                   
  linux.hotplug_type = 2  (0x2)  (int)                                                 
  linux.subsystem = 'input'  (string)                                                  
  input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX_port'  (string)
  input.device = '/dev/input/event10'  (string)                                                    
  info.product = 'PS/2 Generic Mouse'  (string)                                                    
  linux.sysfs_path = '/sys/devices/platform/i8042/serio1/input/input10/event10'  (string)          
  info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX_port'  (string)             
  info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX_port_logicaldev_input'  (string)
  info.category = 'input'  (string)                                                                 
  info.capabilities = { 'input', 'input.mouse' } (string list)                                      
  input.x11_driver = 'evdev'  (string)
Comment 8 Stefano 2010-05-24 21:28:23 UTC
Oh BTW: still true with kernel 2.6.34
Comment 9 Mike Pagano gentoo-dev 2010-06-10 14:07:05 UTC
We'll follow the upstream bug and backport any accepted patches 
Comment 10 Elias Probst 2010-09-19 18:09:29 UTC
FYI: Upstream kernel.org bug: https://bugzilla.kernel.org/show_bug.cgi?id=14660
Comment 11 Sven Eden 2011-02-08 07:51:36 UTC
(In reply to comment #10)
> FYI: Upstream kernel.org bug: https://bugzilla.kernel.org/show_bug.cgi?id=14660
> 

I have tried the patch mentioned in comment #50 there, and it works on my Dell Latitude E6410. The Touchpad isn't recognized as such, so not usable via xf86-input-synaptics. It is recognized as an IMPS Mouse, supporting tapping and vertical scrolling. Suspend/Resume finally works, too. (With the previous patch by Dell, the mouse went haywire after a resume.

Link: https://patchwork.kernel.org/patch/350841/

Ah! My kernel is gentoo-sources-2.6.37
Comment 12 Sven Eden 2011-08-16 13:12:18 UTC
Just wanted to note that said patch works well with gentoo-sources-3.0.1
Comment 13 moutzl 2011-09-02 09:53:54 UTC
hello, there is some betaversion of the alps/synaptics driver v3, provided by Seth Forshee <seth.forshee@canonical.com>

http://people.canonical.com/~sforshee/alps-touchpad/psmouse-alps-0.1/psmouse-alps-dkms_0.1_all.deb

I unpacked the deb file and used source to compile kernel modules. After that I can see two devices and everythings working just fine.(horizontal/vertical scrolling, turning touchpad on/off)




System uname:
Linux-3.0.3-gentoo-x86_64-Intel-R-_Core-TM-_i3_CPU_M_380_@_2.53GHz-with-gentoo-2.0.3

I: Bus=0011 Vendor=0002 Product=0008 Version=7326
N: Name="AlpsPS/2 ALPS DualPoint TouchPad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input16
U: Uniq=
H: Handlers=mouse1 event16 
B: PROP=8
B: EV=b
B: KEY=e420 70000 0 0 0 0
B: ABS=260800001000003

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="DualPoint Stick"
P: Phys=isa0060/serio1/input1
S: Sysfs=/devices/platform/i8042/serio1/input/input15
U: Uniq=
H: Handlers=mouse0 event15 
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0
B: REL=3
Comment 14 Diego Elio Pettenò (RETIRED) gentoo-dev 2011-09-02 10:59:41 UTC
Would have been nice if they wrote which kernel version they took the code from, so that we could get a patch to integrate... trying to find that out.
Comment 15 Diego Elio Pettenò (RETIRED) gentoo-dev 2011-09-02 11:00:05 UTC
(Looks like a 3.0.4)...
Comment 16 Stratos Psomadakis (RETIRED) gentoo-dev 2011-09-02 11:21:52 UTC
The patch is provided here [1], and applies cleanly to 3.0.4 (and 3.0.3), so I think we can add it to genpatches.

[1] http://people.canonical.com/~sforshee/alps-touchpad/psmouse-alps-0.1/alps-v3-protocol-support-v1.patch
Comment 17 Diego Elio Pettenò (RETIRED) gentoo-dev 2011-09-02 11:34:55 UTC
Reopening then. I'm going to test this today.
Comment 18 Diego Elio Pettenò (RETIRED) gentoo-dev 2011-09-02 15:46:19 UTC
Confirmed it works by using a slightly different patch...
Comment 19 Stratos Psomadakis (RETIRED) gentoo-dev 2011-09-05 07:02:22 UTC
(In reply to comment #18)
> Confirmed it works by using a slightly different patch...

What do you mean by different?
Comment 20 Matthew Schultz 2011-09-23 13:11:09 UTC
Any chance we could get this patch applied to gentoo-sources?
Comment 21 Mike Pagano gentoo-dev 2011-09-23 17:34:46 UTC
Which one?
Comment 22 Matthew Schultz 2011-09-23 17:38:28 UTC
(In reply to comment #21)
> Which one?

sys-kernel/gentoo-sources that is
Comment 23 Matthew Schultz 2011-09-23 17:39:12 UTC
(In reply to comment #22)
> (In reply to comment #21)
> > Which one?
> 
> sys-kernel/gentoo-sources that is

Works fine with =sys-kernel/gentoo-sources-3.0.4
Comment 24 Mike Pagano gentoo-dev 2011-09-24 14:30:57 UTC
I meant which patch. :)

I see Diego has modified the patch. Has this been submitted upstream? I'd like to see it submitted and accepted. Are standard procedure is not to add patches which are not vetted through upstream.

http://dev.gentoo.org/~mpagano/genpatches/faq.htm
Comment 25 Matthew Schultz 2011-09-24 21:26:23 UTC
(In reply to comment #24)
> I meant which patch. :)

This is the patch I used against gentoo sources to get my touchpad to be recognized properly and allow scrolling with it:

http://people.canonical.com/~sforshee/alps-touchpad/psmouse-alps-0.1/alps-v3-protocol-support-v1.patch
Comment 26 Sven Eden 2011-09-27 18:51:27 UTC
This is awesome!

The mentioned new patch does not only apply cleanly to gentoo-sources-3.0.4, AND xinput now reports a "AlpsPS/2 ALPS DualPoint TouchPad", no.

Furthermore the "touchpad" tab in KDE systemsettings (4.7.1 here) no longer says that no touchpad is recognized, but no states that a AlpsPS/2 Touchpad is recognized and configurable.

I _really_ hope this patch is accepted upstream!
Comment 27 Stratos Psomadakis (RETIRED) gentoo-dev 2011-09-27 19:10:54 UTC
There have been several releases since the original (the most recent being v0.7 [1]). Anyone willing to test and report if it works ok, or if there are any regressions/problems? 

Thanks.

[1] http://people.canonical.com/~sforshee/alps-touchpad/psmouse-alps-0.7/
Comment 28 Sven Eden 2011-09-28 09:41:58 UTC
Created attachment 288059 [details]
Stripped Patches + shell script to batch patch (Version 0.7)

Startos, I have downloaded the patches and stripped them from "git cruft" to make them work.

They apply cleanly to getnoo-sources-3.0.4. I can not see any big difference, although the touchpad *feels* a bit less sensitive.

KDE-SystemSettings recognize the touchpad and (of course) synclient works with it now.

The archive attached are the "stripped" patches that I applied. The output of the (tiny) shell script was:

------------
sed-notebook /usr/src/linux # ./ALPS.patch.sh 
Applying patch ALPS.patches/0001-Input-ALPS-Move-protocol-information-to-Documentatio.patch ...
patching file Documentation/input/alps.txt
patching file drivers/input/mouse/alps.c
Applying patch ALPS.patches/0002-Input-psmouse-Add-PSMOUSE_CMD_RESET_WRAP.patch ...
patching file drivers/input/mouse/psmouse.h
Applying patch ALPS.patches/0003-Input-ALPS-Add-protocol-version-field-in-alps_model_.patch ...
patching file drivers/input/mouse/alps.c
patching file drivers/input/mouse/alps.h
Applying patch ALPS.patches/0004-Input-ALPS-Remove-assumptions-about-packet-size.patch ...
patching file drivers/input/mouse/alps.c
Applying patch ALPS.patches/0005-Input-ALPS-Add-support-for-protocol-versions-3-and-4.patch ...
patching file drivers/input/mouse/alps.c
patching file drivers/input/mouse/alps.h
Applying patch ALPS.patches/0006-Input-ALPS-Add-documentation-for-protocol-versions-3.patch ...
patching file Documentation/input/alps.txt
patching file drivers/input/mouse/alps.c
Applying patch ALPS.patches/0007-Input-ALPS-Add-semi-MT-support-for-v3-protocol.patch ...
patching file drivers/input/mouse/alps.c
patching file drivers/input/mouse/alps.h
Applying patch ALPS.patches/0008-Input-ALPS-dump-raw-packet-data.patch ...
patching file drivers/input/mouse/alps.c
------------
Comment 29 Sven Eden 2011-09-28 09:45:00 UTC
Created attachment 288061 [details]
(Corr) Stripped Patches + shell script to batch patch (Version 0.7)

Damn... I was too quick with my fingers and messed up the archive. Here is a working one.
Comment 30 Mike Pagano gentoo-dev 2011-09-28 16:07:35 UTC
In SVN for next release, 3.0.4-gentoo-r1 which is forthcoming
Comment 31 Mike Pagano gentoo-dev 2011-09-28 16:40:07 UTC
Please proceed to enjoy your touchpads in gentoo-sources-3.0.4-r1 that was just released.
Comment 32 Matthew Schultz 2011-09-28 20:04:38 UTC
(In reply to comment #31)
> Please proceed to enjoy your touchpads in gentoo-sources-3.0.4-r1 that was just
> released.

Thanks for adding the patch! :-)
Comment 33 Sven Eden 2011-09-30 07:39:28 UTC
Wow! Great job!

But there are two issues I have now. First of all synaptiks (the KDE client for touchpads, I use it to disable the touchpad when an external mouse is plugged in) works, but I had a crash after resuming from suspend. I guess this is because of synaptiks not knowing anything about ALPS and simply assumes a Synaptics touchpad. I had it once, and if it happens again I'll send the Backtrace to bugs.kde.org.

The second is irritating: My middle mouse button no longer works. I have a Dell Latitude E6410, which has two rows of mouse buttons. Two below the touchpad, and three (they belong to the DualPoint Stick in the keyboard) above it. The middle button of those three no longer works. As Three-Finger-Tapping is functioning now, I can live with that, but have to get used to it. I've used the middle mouse button quite frequently.

Finally users should add a configuration to /etc/X11/xorg.conf to set the correct edge values. The ones I have come up so far are:

------------
Section "InputClass"
        Identifier "touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "synaptics"
        Option "LeftEdge"                                       "100"
        Option "RightEdge"                                      "1775"
        Option "TopEdge"                                        "100"
        Option "BottomEdge"                                     "1275"
(... snip ...)
------------

The default values sped up the pointer movement too far and resulted in too wide scrolling edges. Everyone should check their values with "synclient -m 1"
Comment 34 Mike Pagano gentoo-dev 2011-09-30 12:57:50 UTC
And now we see the reason we don't like to add out-of-tree patches that have not been accepted upstream. :)

If a new version comes out, I will update the patches.
Comment 35 Sven Eden 2011-10-02 13:56:43 UTC
Created attachment 288555 [details]
Stripped Patches + shell script to batch patch (Version 0.9)

Man, this guy is a genius!

I have updated to version 0.9 of the patch (the archive now has a versioned patch directory, versioned shell script to apply and one to remove the patches) and my middle mouse button is back.

xinput output now looks like this:

------------
AlpsPS/2 ALPS DualPoint TouchPad                id=13   [slave  pointer  (2)]
        Reporting 3 classes:
                Class originated from: 13
                Buttons supported: 12
                Button labels: Button Left Button Middle Button Right Button Wheel Up Button Wheel Down Button Horiz Wheel Left Button Horiz Wheel Right None None None None None
                Button state:
                Class originated from: 13
                Detail for Valuator 0:
                  Label: Rel X
                  Range: 0.000000 - 2000.000000
                  Resolution: 0 units/m
                  Mode: relative
                Class originated from: 13
                Detail for Valuator 1:
                  Label: Rel Y
                  Range: 0.000000 - 1400.000000
                  Resolution: 0 units/m
                  Mode: relative
------------

See? "Button Middle" is back! :)

(In reply to comment #34)
> And now we see the reason we don't like to add out-of-tree patches that have
> not been accepted upstream. :)

Ah! It is a very good idea to have this patch in the tree. Personally I see three reasons:

1.: Without this patch you have to manually apply the old patch (but kernel.org is down!) to have the touchpad at least to be recognized as an IMPS/2 Mouse, meaning the whole system is unaware that this is a touchpad at all.
2.: Without this patch, starting synaptiks makes no sense whatsoever, as neither synclient nor synaptics can *see* the touchpad.
3.: With this patch in the tree, and maybe some advertisement, we could get more users to test it. Maybe it makes us being able to help Seth Forshee <seth.forshee@canonical.com>, the author of the patch, to further improve it?
Comment 36 Sven Eden 2011-10-03 11:32:10 UTC
Just wanted to report that with the 0.9 patch set, synaptiks is stable for me. Several reboots, suspends and hibernations bot with and without AC plugged in did not trigger another crash. Whatever caused it, Seth fixed it.
Comment 37 Mike Pagano gentoo-dev 2011-10-03 11:43:05 UTC
Included in gentoo-sources-3.0.4-r2
Comment 38 Sven Eden 2011-10-11 07:09:57 UTC
Although everything is working well, I can still make synaptiks crash exactly once after each reboot of my laptop:

Boot -> Suspend -> Wakeup -> Crash.

When I then restart synaptiks, I can suspend and resume at will and the program is dead never crashing again until the next reboot.

As I think this is really weird, I have opened an issue at github for synaptiks here:
https://github.com/lunaryorn/synaptiks/issues/23

Anybody witnessing the same strange crashes might contribute there.
Comment 39 Sven Eden 2011-10-11 10:48:43 UTC
Sebastian Wiesner wrote to me saying that the crashing issue has been fixed in version 0.8 of synaptiks, which is not in the tree, yet.
Comment 40 Stratos Psomadakis (RETIRED) gentoo-dev 2011-10-18 19:44:42 UTC
v10 ALPS patches included in gentoo-sources-3.0.7. 

I think we're going keep this bug open, until the patches are pushed upstream.
Comment 41 Sven Eden 2011-10-18 20:09:24 UTC
Yay! Patch version 10? great!

A note: Synaptiks 0.8.0 is fixed and no longer crashes. This is quite some progress for just a few weeks compared to the many month before, eh? ;-)
Comment 42 Mike Pagano gentoo-dev 2011-12-11 18:47:31 UTC
We'll keep carrying this in genpatches. If a new version is released, please reopen this. 

If it makes the upstream kernel, we'll remove from genpatches, of course.
Comment 43 Seth Forshee 2011-12-16 14:40:46 UTC
Dmitry Torokhov has taken the patches, they're currently in linux-next so expect to see them in 3.3. The patches there are marginally different from the version 10 patches, shouldn't result in any noticible differences but if you'd like to update you can grab them from Dmitry's tree.

http://git.kernel.org/?p=linux/kernel/git/dtor/input.git