[kernel/f19] Fix clicks getting lost with cypress_ps2 touchpads with recent

Hans de Goede jwrdegoede at fedoraproject.org
Mon Mar 31 09:42:02 UTC 2014


commit 857681ed99aea43181c51f53f41092e5a5f23544
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Mon Mar 31 11:41:59 2014 +0200

    Fix clicks getting lost with cypress_ps2 touchpads with recent
    
      xorg-x11-drv-synaptics versions (bfdo#76341)
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>

 ...ss_ps2-Don-t-report-the-cypress-PS-2-trac.patch |   50 ++++++++++++++++++++
 kernel.spec                                        |   11 ++++
 2 files changed, 61 insertions(+), 0 deletions(-)
---
diff --git a/input-cypress_ps2-Don-t-report-the-cypress-PS-2-trac.patch b/input-cypress_ps2-Don-t-report-the-cypress-PS-2-trac.patch
new file mode 100644
index 0000000..5d8b3b1
--- /dev/null
+++ b/input-cypress_ps2-Don-t-report-the-cypress-PS-2-trac.patch
@@ -0,0 +1,50 @@
+From c4aa64b54ecc029579b0c62e976d747a0e567dfc Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede at redhat.com>
+Date: Fri, 21 Mar 2014 10:55:11 +0100
+Subject: [PATCH] input: cypress_ps2: Don't report the cypress PS/2 trackpads
+ as a button pad
+
+The cypress PS/2 trackpad models supported by the cypress_ps2 driver emulate
+BTN_RIGHT events in firmware based on the finger position, as part of this
+no motion events are sent when the finger is in the button area.
+
+The INPUT_PROP_BUTTONPAD property is there to indicate to userspace that
+BTN_RIGHT events should be emulated in userspace, which is not necessary
+in this case.
+
+When INPUT_PROP_BUTTONPAD is advertised userspace will wait for a motion event
+before propagating the button event higher up the stack, as it needs current
+abs x + y data for its BTN_RIGHT emulation. Since in the cypress_ps2 pads
+don't report motion events in the button area, this means that clicks in the
+button area end up being ignored, so INPUT_PROP_BUTTONPAD actually causes
+problems for these touchpads, and removing it fixes:
+
+https://bugs.freedesktop.org/show_bug.cgi?id=76341
+
+Reported-by: Adam Williamson <awilliam at redhat.com>
+Tested-by: Adam Williamson <awilliam at redhat.com>
+Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
+Cc: Adam Williamson <awilliam at redhat.com>
+Cc: Peter Hutterer <peter.hutterer at who-t.net>
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
+Cc: stable at vger.kernel.org
+---
+ drivers/input/mouse/cypress_ps2.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/drivers/input/mouse/cypress_ps2.c b/drivers/input/mouse/cypress_ps2.c
+index 87095e2..8af34ff 100644
+--- a/drivers/input/mouse/cypress_ps2.c
++++ b/drivers/input/mouse/cypress_ps2.c
+@@ -409,7 +409,6 @@ static int cypress_set_input_params(struct input_dev *input,
+ 	__clear_bit(REL_X, input->relbit);
+ 	__clear_bit(REL_Y, input->relbit);
+ 
+-	__set_bit(INPUT_PROP_BUTTONPAD, input->propbit);
+ 	__set_bit(EV_KEY, input->evbit);
+ 	__set_bit(BTN_LEFT, input->keybit);
+ 	__set_bit(BTN_RIGHT, input->keybit);
+-- 
+1.9.0
+
diff --git a/kernel.spec b/kernel.spec
index c196e66..4d02946 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -805,6 +805,10 @@ Patch25051: net-vhost-fix-total-length-when-packets-are-too-short.patch
 #CVE-2014-2580 rhbz 1080084 1080086
 Patch25052: net-xen-netback-disable-rogue-vif-in-kthread-context.patch
 
+#https://bugs.freedesktop.org/show_bug.cgi?id=76341
+#will go upstream for 3.15, and will be backported to stable releases
+Patch25053: input-cypress_ps2-Don-t-report-the-cypress-PS-2-trac.patch
+
 # END OF PATCH DEFINITIONS
 
 %endif
@@ -1556,6 +1560,9 @@ ApplyPatch net-vhost-fix-total-length-when-packets-are-too-short.patch
 #CVE-2014-2580 rhbz 1080084 1080086
 ApplyPatch net-xen-netback-disable-rogue-vif-in-kthread-context.patch
 
+#https://bugs.freedesktop.org/show_bug.cgi?id=76341
+ApplyPatch input-cypress_ps2-Don-t-report-the-cypress-PS-2-trac.patch
+
 # END OF PATCH APPLICATIONS
 
 %endif
@@ -2368,6 +2375,10 @@ fi
 # and build.
 
 %changelog
+* Mon Mar 31 2014 Hans de Goede <hdegoede at redhat.com>
+- Fix clicks getting lost with cypress_ps2 touchpads with recent
+  xorg-x11-drv-synaptics versions (bfdo#76341)
+
 * Fri Mar 28 2014 Josh Boyer <jwboyer at fedoraproject.org>
 - CVE-2014-2580 xen: netback crash trying to disable due to malformed packet (rhbz 1080084 1080086)
 - CVE-2014-0077 vhost-net: insufficent big packet handling in handle_rx (rhbz 1064440 1081504)


More information about the scm-commits mailing list