Patchwork APPLIED: [Precise PATCH 0/6] Support for new Sentelic touchpad (LP #969334)

login
register
mail settings
Submitter Tim Gardner
Date April 13, 2012, 1:07 p.m.
Message ID <4F88252F.9090307@canonical.com>
Download mbox | patch
Permalink /patch/152301/
State New
Headers show

Comments

Tim Gardner - April 13, 2012, 1:07 p.m.
On 04/13/2012 06:44 AM, Tim Gardner wrote:
> What impact will the lack of this patch have (as noted by Chase) ?
> 

Aha!

Chase - I took the liberty of applying your ACK.
Chase Douglas - April 13, 2012, 4:35 p.m.
On 04/13/2012 06:07 AM, Tim Gardner wrote:
> On 04/13/2012 06:44 AM, Tim Gardner wrote:
>> What impact will the lack of this patch have (as noted by Chase) ?
>>
> 
> Aha!
> 
> Chase - I took the liberty of applying your ACK.

Fine by me.

Thanks!

Patch

From 4a4d71a277c26464bc6c844a3d3eae9d8e12904a Mon Sep 17 00:00:00 2001
From: Oskari Saarenmaa <os@ohmu.fi>
Date: Tue, 3 Apr 2012 09:46:32 -0700
Subject: [PATCH] Input: sentelic - filter taps in absolute mode

BugLink: http://bugs.launchpad.net/bugs/969334

Taps in absolute positioning single-finger mode are currently reported
as physical clicks by the driver. This should be handled by userspace,
not the kernel.

When a tap occurs, the FSP_PB0_LBTN bit is set, but the FSP_PB0_PHY_BTN
is not. We use this to filter out physical clicks from taps.

Signed-off-by: Oskari Saarenmaa <os@ohmu.fi>
Reviewed-by: Tai-hwa Liang <avatar@sentelic.com>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
(cherry picked from commit d626dad58f02e13730ded6ac84d6a9e53123f0e8)

Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Chase Douglas <chase.douglas@canonical.com>
---
 drivers/input/mouse/sentelic.c |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/input/mouse/sentelic.c b/drivers/input/mouse/sentelic.c
index 869efb3..19097f4 100644
--- a/drivers/input/mouse/sentelic.c
+++ b/drivers/input/mouse/sentelic.c
@@ -720,6 +720,14 @@  static psmouse_ret_t fsp_process_byte(struct psmouse *psmouse)
 			}
 		} else {
 			/* SFAC packet */
+			if ((packet[0] & (FSP_PB0_LBTN|FSP_PB0_PHY_BTN)) ==
+				FSP_PB0_LBTN) {
+				/* On-pad click in SFAC mode should be handled
+				 * by userspace.  On-pad clicks in MFMC mode
+				 * are real clickpad clicks, and not ignored.
+				 */
+				packet[0] &= ~FSP_PB0_LBTN;
+			}
 
 			/* no multi-finger information */
 			ad->last_mt_fgr = 0;
-- 
1.7.9.5