[PATCH][Precise] Fix vertical edge scrolling regression for some Synaptics touchpads

Seth Forshee seth.forshee at canonical.com
Mon Sep 10 16:58:28 UTC 2012


This patch has been submitted upstream with Cc stable. I'm proposing we
pick it up now though as it fixes a regression that first appeared in
3.2.0-30.47.

== SRU Justification ==

Impact: A patch to deal with out-of-specificaton position values with
one Synaptics touchpad broke vertical edge scrolling on some other
touchpads. The firmware for these touchpads uses a special value of 8176
to indicate a finger at the right or bottom of the touchpad whose
precise position cannot be determined. This value is not documented in
the interfacing guide from Synaptics and is outside of the range of
values that the documentation indicates will be reported for finger
positions.

Fix: Adjustments to the handling of position values that fall outside of
the documented ranges. Treat only values above 8176 as wrapped negative
values, and clamp the value 8176 to the maximum specified position value
for the axis to make it something more reasonable.

Test Case: Verify that the patch fixes edge scrolling on an affected
machine. Verified on LP#1046512.


Seth Forshee (1):
  Input: synaptics - Adjust threshold for treating position values as
    negative

 drivers/input/mouse/synaptics.c |   31 +++++++++++++++++++++++--------
 1 file changed, 23 insertions(+), 8 deletions(-)





More information about the kernel-team mailing list