diff options
author | Benjamin Tissoires <benjamin.tissoires@redhat.com> | 2015-04-05 16:45:04 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2015-04-06 12:38:07 -0400 |
commit | 63c4fda3c0bb841b1aad1298fc7fe94058fc79f8 (patch) | |
tree | 6f2df1c77b8ffc246d254d3d3df4e2c4ab835684 /drivers/input | |
parent | 58fd9af6e1ccabec6bc799b32eea22a82103d5ae (diff) |
Input: synaptics - allocate 3 slots to keep stability in image sensors
When slowly dropping 1, 2 and then 3 fingers on an image sensor touchpad,
we can see that the first finger gets reassigned a new slot while it did
not move. This is due to the kernel tracking algorithm which can not assign
correctly the 3 touches, being out of slots.
Declaring that we support 3 slots allows to actually forward:
slot 0 -> down, slot 1 -> up, slot 2 -> down
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Henrik Rydberg <rydberg@bitmath.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/mouse/synaptics.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 3c54b9b0f65f..95898333834f 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c | |||
@@ -1189,7 +1189,7 @@ static void set_input_params(struct psmouse *psmouse, | |||
1189 | ABS_MT_POSITION_Y); | 1189 | ABS_MT_POSITION_Y); |
1190 | /* Image sensors can report per-contact pressure */ | 1190 | /* Image sensors can report per-contact pressure */ |
1191 | input_set_abs_params(dev, ABS_MT_PRESSURE, 0, 255, 0, 0); | 1191 | input_set_abs_params(dev, ABS_MT_PRESSURE, 0, 255, 0, 0); |
1192 | input_mt_init_slots(dev, 2, INPUT_MT_POINTER | INPUT_MT_TRACK); | 1192 | input_mt_init_slots(dev, 3, INPUT_MT_POINTER | INPUT_MT_TRACK); |
1193 | 1193 | ||
1194 | /* Image sensors can signal 4 and 5 finger clicks */ | 1194 | /* Image sensors can signal 4 and 5 finger clicks */ |
1195 | __set_bit(BTN_TOOL_QUADTAP, dev->keybit); | 1195 | __set_bit(BTN_TOOL_QUADTAP, dev->keybit); |