Skip to content

Commit

Permalink
Input: sentelic - filter taps in absolute mode
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Oskari Saarenmaa authored and Dmitry Torokhov committed Apr 3, 2012
1 parent 79026ff commit d626dad
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions drivers/input/mouse/sentelic.c
Original file line number Diff line number Diff line change
Expand Up @@ -741,6 +741,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;
Expand Down

0 comments on commit d626dad

Please sign in to comment.