Cypress trackpad: Disable tap-to-click doesn't affect mouse button zones.

Bug #1048816 reported by Kyle Fazzari
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Dell Sputnik
Fix Released
Medium
Kyle Fazzari
linux (Ubuntu)
Fix Released
Medium
Kamal Mostafa
Precise
Fix Released
Medium
Kamal Mostafa
Quantal
Fix Released
Medium
Kamal Mostafa

Bug Description

I am a Sputnik Beta participant; as such, I have the high-end XPS 13 along with the custom Dell Ubuntu image.

My hands are large enough that one or both of my palms hit the touchpad quite often while I'm typing. For this reason, along with the fact that I can't stand it anyway, I disabled tap-to-click via the Mouse and Touchpad settings program. I also enabled the "Disable touchpad while typing" option. However, the part of the touchpad that my palms normally make contact with (the left and right button zones at the bottom) don't seem to be affected by these settings. I can still tap-to-click on it. Indeed tapping (not depressing the clickpad) on either of the two mouse button zones results in a left click.

It's quite frustrating to be typing in one place and a brush with your palm results in the cursor moving. Disabling tap-to-click should affect the entire touchpad.

Kyle Fazzari (kyrofa)
description: updated
description: updated
Revision history for this message
Kyle Fazzari (kyrofa) wrote :

It's been awhile with no response from the Sputnik folks, so I have taken the liberty of assigning this to myself. I have attached a patch. I'm not really sure what to do next, unfortunately. While I try to figure it out, please feel free to test out my patch!

Changed in dell-sputnik:
assignee: nobody → Kyle Fazzari (kyle.f)
Revision history for this message
Kyle Fazzari (kyrofa) wrote :

Please note: Very occasionally, a left click still seems to make it through even with the patch. The times this happens seems to coinside with a loss of synchronization, which leads me to believe this is a different problem.

Revision history for this message
Kyle Fazzari (kyrofa) wrote :

Scratch the above comment. The clicks that sneak through aren't limited to the button zones. This is definitely an unrelated issue.

Revision history for this message
doubleo2 (doubleo2) wrote :

Confirming this bug. Have not tried the patch yet.

Changed in dell-sputnik:
status: New → Confirmed
Revision history for this message
Kyle Fazzari (kyrofa) wrote :

To apply the patch:

-----------------------------------
APPLY SOURCE CHANGES
-----------------------------------

Clone Kamal's kernel (this is the one used by the Sputnik Ubuntu release):

$ git clone git://kernel.ubuntu.com/kamal/ubuntu-precise.git

(That may take some time).

Download and save the patch from comment #1.

Patch the kernel git repo you just checked out:

$ cd ubuntu-precise/
$ git am <path-to-patch>

Check to make sure it succeeded:

$ git status

Make sure that mentions that you're ahead of the master by 1 commit.

---------------------
BUILD KERNEL
---------------------

Now you need to configure your kernel. You can start with the configuration of the kernel you're running:

$ cd ubuntu-precise/
$ cp /boot/config-$(uname -r) .config
$ make oldconfig

NOW you can build your kernel using that configuration (note the -j8 compiles with 8 threads. It'll max your cores):

$ make -j8

(this took me about 45 minutes; grab some lunch).

--------------------------
TEST NEW DRIVER
--------------------------

The touchpad driver is compiled as a kernel module, which makes it super easy to test. First, get to where the module was compiled:

$ cd ubuntu-precise/drivers/input/mouse/

Stop using the installed module for your touchpad (note that your touchpad will stop working):

$ sudo rmmod psmouse

Give your newly compiled module a test run:

$ sudo insmod psmouse.ko

First of all, your mouse should be working again. Second, while you should be able to tap-to-click everywhere on the touchpad if tap-to-click is enabled, if tap-to-click is DISabled you shouldn't be able to tap-to-click anywhere, including the mouse button zones (although do take note of comments 2-3).

To stop testing the newly compiled module, unload it and load up the system version instead:

$ sudo rmmode psmouse
$ sudo modprobe psmouse

Note: If you reboot, the system version of the module will be loaded on boot.

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

@Hi Kyle-

I confirm that this is a bug, and that your patch fixes it (at least mostly fixes it -- I also do observe the occasional stray tap "leak" through and appear as a left-click). I'll contact you by email to discuss the logistics of getting your patch applied to the Sputnik and Ubuntu kernels.

Thanks for the report and (even more!) for the fix!

affects: dell-sputnik → linux
affects: linux → linux (Ubuntu)
summary: - Disable tap-to-click doesn't affect mouse button zones.
+ Cypress trackpad: Disable tap-to-click doesn't affect mouse button
+ zones.
Chris Van Hoof (vanhoof)
Changed in dell-sputnik:
status: New → Confirmed
Changed in linux (Ubuntu):
importance: Undecided → Medium
Changed in dell-sputnik:
importance: Undecided → Medium
Changed in linux (Ubuntu):
assignee: Kyle Fazzari (kyle.f) → Kamal Mostafa (kamalmostafa)
Changed in linux (Ubuntu Precise):
status: New → Confirmed
importance: Undecided → Medium
assignee: nobody → Kamal Mostafa (kamalmostafa)
Changed in dell-sputnik:
assignee: nobody → Kyle Fazzari (kyle.f)
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "Fixed by making sure the specialized taps coming from the mouse zones don't turn into left mouse clicks." of this bug report has been identified as being a patch. The ubuntu-reviewers team has been subscribed to the bug report so that they can review the patch. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-reviewers team please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Changed in linux (Ubuntu Precise):
status: Confirmed → In Progress
Changed in linux (Ubuntu Quantal):
status: Confirmed → In Progress
Changed in dell-sputnik:
status: Confirmed → In Progress
Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Quantal):
status: In Progress → Fix Committed
Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Precise):
status: In Progress → Fix Committed
Kyle Fazzari (kyrofa)
Changed in dell-sputnik:
status: In Progress → Fix Committed
Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

Kyle's patch has been applied to the Ubuntu Precise and Ubuntu Quantal source trees, and will appear in forthcoming release versions of each of those kernels. Announcements of those specific kernel versions will be posted here when they get released.

In the meantime, I have updated the Sputnik Project kernel PPA to include the patch. The Sputnik kernels are building now and will become available shortly; versions labelled kamal8 or higher will include the patch:
    https://launchpad.net/~canonical-hwe-team/+archive/sputnik-kernel

Kyle, thanks very much for your work finding and fixing this issue.

Changed in dell-sputnik:
status: Fix Committed → Fix Released
Revision history for this message
Kyle Fazzari (kyrofa) wrote :

My pleasure Kamal. Thanks for incorporating it so quickly!

Revision history for this message
Luis Henriques (henrix) wrote :

This bug is awaiting verification that the kernel for Precise in -proposed solves the problem (3.2.0-32.51). Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-precise' to 'verification-done-precise'.

If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-precise
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.5.0-16.24

---------------
linux (3.5.0-16.24) quantal-proposed; urgency=low

  [ Andy Whitcroft ]

  * SAUCE: ata_piix: add a disable_driver option
    - LP: #994870

  [ Christian König ]

  * (pre-stable) drm/radeon: make 64bit fences more robust v3 (3.5 stable)
    - LP: #1029582

  [ David Henningsson ]

  * SAUCE: ALSA: hda - use both input paths on Conexant auto parser
    - LP: #1037642
  * SAUCE: ALSA: hda - fix control names for multiple speaker out on
    IDT/STAC
    - LP: #1046734

  [ Herton Ronaldo Krzesinski ]

  * SAUCE: ALSA: hda/via - don't report presence on HPs with no presence
    support
    - LP: #1052499
  * SAUCE: ext4: fix crash when accessing /proc/mounts concurrently
    - LP: #1053019
  * SAUCE: ALSA: hda/realtek - Fix detection of ALC271X codec
    - LP: #1006690

  [ Kyle Fazzari ]

  * SAUCE: input: Cypress PS/2 Trackpad fix disabling tap-to-click
    - LP: #1048816

  [ Leann Ogasawara ]

  * [Config] Disable CONFIG_DRM_AST
    - LP: #1053290

  [ Stefan Bader ]

  * [Config] Disable the Cirrus QEMU drm driver
    - LP: #1038055

  [ Upstream Kernel Changes ]

  * Revert "KVM: VMX: Fix KVM_SET_SREGS with big real mode segments"
    - LP: #1045027
  * x86, efi: Handover Protocol
  * drm/i915: HDMI - Clear Audio Enable bit for Hot Plug
    - LP: #1056729
  * UBUNTU SAUCE: apparmor: fix IRQ stack overflow
    - LP: #1056078
  * drm/nouveau: fix booting with plymouth + dumb support
    - LP: #1043518
  * ALSA: hda - Add DeviceID for Haswell HDA
    - LP: #1057698
  * ALSA: hda - add Haswell HDMI codec id
    - LP: #1057698
  * ALSA: hda - Fix driver type of Haswell controller to AZX_DRIVER_SCH
    - LP: #1057698
  * ALSA: hda_intel: Add Device IDs for Intel Lynx Point-LP PCH
    - LP: #1011438, #1057698

  [ Wang Xingchao ]

  * SAUCE: ALSA: hda - Add another pci id for Haswell board
    - LP: #1057698

  [ Wen-chien Jesse Sung ]

  * SAUCE: drm/i915: Explicitly disable RC6 for certain models
    - LP: #1002170, #1008867
 -- Leann Ogasawara <email address hidden> Thu, 27 Sep 2012 13:55:52 -0700

Changed in linux (Ubuntu Quantal):
status: Fix Committed → Fix Released
tags: added: verification-done-precise
removed: verification-needed-precise
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (18.4 KiB)

This bug was fixed in the package linux - 3.2.0-32.51

---------------
linux (3.2.0-32.51) precise-proposed; urgency=low

  [Luis Henriques]

  * Release Tracking Bug
    - LP: #1056036

  [ Keng-Yu Lin ]

  * SAUCE: Intel xhci: Only switch the switchable ports
    - LP: #1034814

  [ Kyle Fazzari ]

  * SAUCE: input: Cypress PS/2 Trackpad fix disabling tap-to-click
    - LP: #1048816

  [ Seth Forshee ]

  * SAUCE: Input: synaptics - Adjust threshold for treating position values
    as negative
    - LP: #1046512

  [ Stefan Bader ]

  * Revert "SAUCE: Force xsave off on older Xen hypervisors"
    - LP: #1044550

  [ Upstream Kernel Changes ]

  * Revert "HID: wiimote: fix invalid power_supply_powers call"
    - LP: #1048605
  * Revert "drm/radeon: fix bo creation retry path"
    - LP: #1049899
  * HID: wiimote: fix invalid power_supply_powers call
    - LP: #1048605
  * HID: add ASUS AIO keyboard model AK1D
    - LP: #1027789, #1049899
  * nfs: tear down caches in nfs_init_writepagecache when allocation fails
    - LP: #1049899
  * NFS: Use kcalloc() when allocating arrays
    - LP: #1049899
  * NFSv4.1 fix page number calculation bug for filelayout decode buffers
    - LP: #1049899
  * fix page number calculation bug for block layout decode buffer
    - LP: #1049899
  * pnfs: defer release of pages in layoutget
    - LP: #1049899
  * ext4: avoid kmemcheck complaint from reading uninitialized memory
    - LP: #1049899
  * fuse: verify all ioctl retry iov elements
    - LP: #1049899
  * Bluetooth: Fix legacy pairing with some devices
    - LP: #1049899
  * xhci: Increase reset timeout for Renesas 720201 host.
    - LP: #1049899
  * xhci: Add Etron XHCI_TRUST_TX_LENGTH quirk.
    - LP: #1049899
  * USB: ftdi_sio: Add VID/PID for Kondo Serial USB
    - LP: #1049899
  * USB: option: Add Vodafone/Huawei K5005 support
    - LP: #1049899
  * USB: add USB_VENDOR_AND_INTERFACE_INFO() macro
    - LP: #1049899
  * USB: support the new interfaces of Huawei Data Card devices in option
    driver
    - LP: #1049899
  * usb: serial: mos7840: Fixup mos7840_chars_in_buffer()
    - LP: #1049899
  * usb: gadget: u_ether: fix kworker 100% CPU issue with still used
    interfaces in eth_stop
    - LP: #1049899
  * ARM: 7483/1: vfp: only advertise VFPv4 in hwcaps if CONFIG_VFPv3 is
    enabled
    - LP: #1049899
  * ARM: 7488/1: mm: use 5 bits for swapfile type encoding
    - LP: #1049899
  * ARM: 7489/1: errata: fix workaround for erratum #720789 on UP systems
    - LP: #1049899
  * drm/i915: ignore eDP bpc settings from vbt
    - LP: #1049899
  * ALSA: hda - fix Copyright debug message
    - LP: #1049899
  * sched: fix divide by zero at {thread_group,task}_times
    - LP: #1049899
  * ath9k: fix decrypt_error initialization in ath_rx_tasklet()
    - LP: #1049899
  * drm/nvd0/disp: mask off high 16 bit of negative cursor x-coordinate
    - LP: #1049899
  * drm/i915: reorder edp disabling to fix ivb MacBook Air
    - LP: #1049899
  * audit: don't free_chunk() after fsnotify_add_mark()
    - LP: #1049899
  * audit: fix refcounting in audit-tree
    - LP: #1049899
  * vfs: canonicalize create mode in build_open_flags()
    - LP: #1049899
  * PCI: EHCI: Fix crash d...

Changed in linux (Ubuntu Precise):
status: Fix Committed → Fix Released
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.