ALPS driver lacks semi-MT support for "v4" touchpads

Bug #954109 reported by Johannes Frank
28
This bug affects 3 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Wishlist
Unassigned

Bug Description

The "v4" ALPS hardware is capable of semi-MT support, which would enable features like two-finger tapping and scrolling. The driver however lacks the necessary support to enable these features for this generation of touchpads.

Original Description:

The Sony Vario VGN-NR21E Notebook with ALPS Glide Touchpad is missing the right mouse click when using two or three finger tapping in Precise Pangolin 12.04.
Here is the out put of xinput list:
xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ PS/2 Mouse id=10 [slave pointer (2)]
⎜ ↳ AlpsPS/2 ALPS GlidePoint id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Video Bus id=6 [slave keyboard (3)]
    ↳ Sony Vaio Keys id=7 [slave keyboard (3)]
    ↳ Power Button id=8 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=9 [slave keyboard (3)]

Output of synclient -l:
Parameter settings:
    LeftEdge = 153
    RightEdge = 870
    TopEdge = 115
    BottomEdge = 652
    FingerLow = 12
    FingerHigh = 15
    FingerPress = 128
    MaxTapTime = 180
    MaxTapMove = 56
    MaxDoubleTapTime = 180
    SingleTapTimeout = 180
    ClickTime = 100
    FastTaps = 0
    EmulateMidButtonTime = 75
    EmulateTwoFingerMinZ = 141
    EmulateTwoFingerMinW = 7
    VertScrollDelta = 25
    HorizScrollDelta = 25
    VertEdgeScroll = 1
    HorizEdgeScroll = 0
    CornerCoasting = 0
    VertTwoFingerScroll = 0
    HorizTwoFingerScroll = 0
    MinSpeed = 1
    MaxSpeed = 1.75
    AccelFactor = 0.156495
    TrackstickSpeed = 40
    EdgeMotionMinZ = 15
    EdgeMotionMaxZ = 80
    EdgeMotionMinSpeed = 1
    EdgeMotionMaxSpeed = 102
    EdgeMotionUseAlways = 0
    TouchpadOff = 0
    LockedDrags = 0
    LockedDragTimeout = 5000
    RTCornerButton = 2
    RBCornerButton = 3
    LTCornerButton = 0
    LBCornerButton = 0
    TapButton1 = 1
    TapButton2 = 3
    TapButton3 = 0
    ClickFinger1 = 1
    ClickFinger2 = 1
    ClickFinger3 = 0
    CircularScrolling = 0
    CircScrollDelta = 0.1
    CircScrollTrigger = 0
    CircularPad = 0
    PalmDetect = 0
    PalmMinWidth = 10
    PalmMinZ = 100
    CoastingSpeed = 20
    CoastingFriction = 50
    PressureMotionMinZ = 15
    PressureMotionMaxZ = 80
    PressureMotionMinFactor = 1
    PressureMotionMaxFactor = 1
    ResolutionDetect = 1
    GrabEventDevice = 1
    TapAndDragGesture = 1
    AreaLeftEdge = 0
    AreaRightEdge = 0
    AreaTopEdge = 0
    AreaBottomEdge = 0
    ClickPad = 0
    RightButtonAreaLeft = 0
    RightButtonAreaRight = 0
    RightButtonAreaTop = 0
    RightButtonAreaBottom = 0
    MiddleButtonAreaLeft = 0
    MiddleButtonAreaRight = 0
    MiddleButtonAreaTop = 0
    MiddleButtonAreaBottom = 0

Any changes to synclient via TapButtonN=N seems to be ignored. When tapping with two or three fingers no right click is generated. I tried gpointing-device-settings but in vain. synclient -m 10 does not work since SHMConfig is not activated and I couldn't find any information on how to enable it without xorg.conf.

I'll be glad to do testing or provide additional information on demand.
Output of lsb_release -rd:
Description: Ubuntu precise (development branch)
Release: 12.04

sudo apt-cache policy linux-image-3.2.0-18-generic-pae
[sudo] password for johannes:
linux-image-3.2.0-18-generic-pae:
  Installiert: 3.2.0-18.28
  Kandidat: 3.2.0-18.29
  Versionstabelle:
     3.2.0-18.29 0
        500 http://de.archive.ubuntu.com/ubuntu/ precise/main i386 Packages
 *** 3.2.0-18.28 0
        100 /var/lib/dpkg/status
---
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
AplayDevices:
 **** List of PLAYBACK Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: ALC262 Analog [ALC262 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
ApportVersion: 1.94.1-0ubuntu2
Architecture: i386
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: ALC262 Analog [ALC262 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: johannes 1907 F.... pulseaudio
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xfc300000 irq 46'
   Mixer name : 'Realtek ALC262'
   Components : 'HDA:10ec0262,104d2800,00100100 HDA:14f12c06,104d1700,00100000'
   Controls : 17
   Simple ctrls : 9
DistroRelease: Ubuntu 12.04
HibernationDevice: RESUME=UUID=b4f69eca-e7fe-4124-bcf0-da2d49699dfb
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release i386 (20101007)
MachineType: Sony Corporation VGN-NR21E_S
Package: linux (not installed)
PccardctlIdent:
 Socket 0:
   no product info available
PccardctlStatus:
 Socket 0:
   no card
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-18-generic-pae root=UUID=b2bd52d0-c4ca-48e8-b46c-6c2bec7e010f ro quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 3.2.0-18.28-generic-pae 3.2.9
RelatedPackageVersions:
 linux-restricted-modules-3.2.0-18-generic-pae N/A
 linux-backports-modules-3.2.0-18-generic-pae N/A
 linux-firmware 1.71
Tags: precise
Uname: Linux 3.2.0-18-generic-pae i686
UpgradeStatus: Upgraded to precise on 2012-03-10 (2 days ago)
UserGroups: adm admin cdrom dialout dip fax floppy fuse lpadmin mythtv plugdev sambashare tape tilp video
WifiSyslog:

dmi.bios.date: 10/23/2007
dmi.bios.vendor: Phoenix Technologies LTD
dmi.bios.version: R1101J9
dmi.board.asset.tag: N/A
dmi.board.name: VAIO
dmi.board.vendor: Sony Corporation
dmi.board.version: N/A
dmi.chassis.asset.tag: N/A
dmi.chassis.type: 10
dmi.chassis.vendor: Sony Corporation
dmi.chassis.version: N/A
dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvrR1101J9:bd10/23/2007:svnSonyCorporation:pnVGN-NR21E_S:pvrC3LQKCYX:rvnSonyCorporation:rnVAIO:rvrN/A:cvnSonyCorporation:ct10:cvrN/A:
dmi.product.name: VGN-NR21E_S
dmi.product.version: C3LQKCYX
dmi.sys.vendor: Sony Corporation

Johannes Frank (jmfrank)
summary: - ALPS Touchpad is missing tapping right mouse clickis
+ ALPS Touchpad is missing tapping right mouse clicks
Johannes Frank (jmfrank)
affects: tilp (Ubuntu) → linux (Ubuntu)
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 954109

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: precise
Revision history for this message
Johannes Frank (jmfrank) wrote : AcpiTables.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Johannes Frank (jmfrank) wrote : AlsaDevices.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : BootDmesg.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : CRDA.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : Card0.Amixer.values.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : Card0.Codecs.codec.0.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : Card0.Codecs.codec.1.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : IwConfig.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : Lspci.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : Lsusb.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : PciMultimedia.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : ProcEnviron.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : ProcModules.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : PulseList.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : RfKill.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : UdevDb.txt

apport information

Revision history for this message
Johannes Frank (jmfrank) wrote : UdevLog.txt

apport information

Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Re: ALPS Touchpad is missing tapping right mouse clicks

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v3.3 kernel[1] (Not a kernel in the daily directory). Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag(Only that one tag, please leave the other tags). This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text.

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream'.
Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[1] http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3-rc7-precise/

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Incomplete → Confirmed
tags: added: needs-upstream-testing
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Johannes Frank (jmfrank) wrote :

uname -a
Linux angelika-VGN-NR21E 3.3.0-030300rc7-generic-pae #201203101735 SMP Sat Mar 10 22:52:51 UTC 2012 i686 i686 i386 GNU/Linux
I installed the mainline kernel, but no change in behavior. synclient -l and xinput seem the same. (see attachment)
Are there further information you want me to send?

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

This issue appears to be an upstream bug, since you tested the latest upstream kernel. Would it be possible for you to open an upstream bug report at bugzilla.kernel.org [1]? That will allow the upstream Developers to examine the issue, and may provide a quicker resolution to the bug.

If you are comfortable with opening a bug upstream, It would be great if you can report back the upstream bug number in this bug report. That will allow us to link this bug to the upstream report.

[1] https://wiki.ubuntu.com/Bugs/Upstream/kernel

Changed in linux (Ubuntu):
status: Incomplete → Triaged
tags: added: kernel-bug-exists-upstream
removed: needs-upstream-testing
Revision history for this message
Seth Forshee (sforshee) wrote :

I suspect you have one of the "v4" touchpads, and if so the ALPS driver does not yet support any multi-finger functionality for your device. You can check by identifying the input device for your touchpad (you can use lsinput to do this) and then running 'cat /sys/class/<input_dev>/properties'. If the value is 0 then there's no semi-mt support for your touchpad.

Changed in linux (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
Johannes Frank (jmfrank) wrote :

Hello Seth,
you are right, it seems to be a "v4" touchpad. I made the test you required and the property value is 0. On different notebooks this value was unequal to 0.
Nevertheless this is still a regression bug, so how do I revert to the former state? No right tapping mouse click is undesireable.

Revision history for this message
Seth Forshee (sforshee) wrote :

I'm surprised you got the right clicks previously. Try the following.

  sudo modprobe -r psmouse
  sudo modprobe psmouse proto=bare

If that doesn't get them, try again with proto=imps.

If one of these gets the right clicks back, you can make it permanent by creating a file named /etc/modprobe.d/psmouse.conf with the following contents (just change bare to imps if that's the one that worked).

  options psmouse proto=bare

Revision history for this message
Johannes Frank (jmfrank) wrote :

Well, I booted a Lucid Life CD to make sure I wasn't telling nonsense and found out you're right. It never seemed to function before. proto=bare doesn't work ether, so this turns out to be a "feature". What to do?
Thanks for your effort anyway.

Revision history for this message
Seth Forshee (sforshee) wrote :

That makes more sense. There was a workaround on some Dell machines to enable the touchpad as an IMPS mouse which got it supporting a few features like two-finger taps. bit I don't think this ever worked for the v4 touchpads.

I'll change this back to confirmed, but I'm going to change the importance to wishlist. When I find myself with some free time I'll try to work on it, but I don't know when that will be.

I'm also going to update the title to something that will serve as more of a catchall for semi-MT features for ALPS v4 touchpads.

Changed in linux (Ubuntu):
importance: Medium → Wishlist
status: Incomplete → Confirmed
summary: - ALPS Touchpad is missing tapping right mouse clicks
+ ALPS driver lacks semi_MT support for "v4" touchpads
summary: - ALPS driver lacks semi_MT support for "v4" touchpads
+ ALPS driver lacks semi-MT support for "v4" touchpads
description: updated
Revision history for this message
Brad Figg (brad-figg) wrote : Test with newer development kernel (3.2.0-19.30)

Thank you for taking the time to file a bug report on this issue.

However, given the number of bugs that the Kernel Team receives during any development cycle it is impossible for us to review them all. Therefore, we occasionally resort to using automated bots to request further testing. This is such a request.

We have noted that there is a newer version of the development kernel than the one you last tested when this issue was found. Please test again with the newer kernel and indicate in the bug if this issue still exists or not.

You can update to the latest development kernel by simply running the following commands in a terminal window:

    sudo apt-get update
    sudo apt-get upgrade

If the bug still exists, change the bug status from Incomplete to Confirmed. If the bug no longer exists, change the bug status from Incomplete to Fix Released.

If you want this bot to quit automatically requesting kernel tests, add a tag named: bot-stop-nagging.

 Thank you for your help, we really do appreciate it.

Changed in linux (Ubuntu):
status: Confirmed → Incomplete
tags: added: kernel-request-3.2.0-19.30
Seth Forshee (sforshee)
tags: added: bot-stop-nagging
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Johannes Frank (jmfrank) wrote :

Seth and the Team,
thanks for the support. I like the new title :-))

Revision history for this message
george panta (adgeruy) wrote :

Hello,

I have created a patch that adds semi-mt support to v4 touchpads.

However it is a bit buggy as in 2 finger scroll is not easily recognizable in the Left Half of the Touchpad.

Please see the attached patch and maybe someone can improve on it.

Documentation and original patches for v3 and v4 ALPS support by Seth Forshee are here:

http://people.canonical.com/~sforshee/alps-touchpad/psmouse-alps-0.10/

This patch is based on these (i.e. Linux kernel > v.3.3).

tags: added: patch
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.