Bug 83081 - Synaptics Large Touch Screen doesn't send events - Dell XPS 13 9333
Summary: Synaptics Large Touch Screen doesn't send events - Dell XPS 13 9333
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Input Devices (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: drivers_input-devices
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-08-23 17:38 UTC by Gabriele Mazzotta
Modified: 2014-09-04 08:14 UTC (History)
3 users (show)

See Also:
Kernel Version: 3.17-rc1
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments
Patch to force the device group of the touchscreen (499 bytes, patch)
2014-08-23 17:38 UTC, Gabriele Mazzotta
Details | Diff
patch for linus master (943 bytes, patch)
2014-08-25 18:49 UTC, Henrik Rydberg
Details | Diff
Alternative fix (1.88 KB, patch)
2014-08-25 19:36 UTC, Dmitry Torokhov
Details | Diff

Description Gabriele Mazzotta 2014-08-23 17:38:27 UTC
Created attachment 147871 [details]
Patch to force the device group of the touchscreen

The touchscreen is no longer working with 3.17-rc1. Only the first touch works.

The problem seems to be that both "input_mt_is_used(mt, slot)" and "input_mt_is_active(slot)" in drivers/hid/hid-multitouch.c are constantly true except for the first touch after the driver is loaded.
With 3.16 "input_mt_is_used(mt, slot)" is true only the first time the touchscreen is touched and then constantly false.

The patch attached makes the touchscreen work.
I wonder what is causing the different behavior. Is it possible that the touchscreen is not really Windows 8 certified? I honestly don't know how to verify it.

Here what lspci returns:
Bus 002 Device 002: ID 06cb:0af8 Synaptics, Inc.
Comment 1 Dmitry Torokhov 2014-08-25 17:17:21 UTC
Does reverting f8ec894945e7d205ce62be59e55e72c4304e4739 help? I think we should increment mt->frame++ unconditionally, not only when we are dropping unused events.
Comment 2 Gabriele Mazzotta 2014-08-25 18:27:17 UTC
Yes, reverting it helps.
Comment 3 Henrik Rydberg 2014-08-25 18:49:29 UTC
Created attachment 148131 [details]
patch for linus master
Comment 4 Henrik Rydberg 2014-08-25 18:50:23 UTC
Thanks Gabriele, and thanks Dmitry for the CC.

Does this patch help as well?

Henrik
Comment 5 Gabriele Mazzotta 2014-08-25 19:21:09 UTC
Yes, the patch solves the problem, thanks.
Comment 6 Dmitry Torokhov 2014-08-25 19:36:01 UTC
Created attachment 148151 [details]
Alternative fix

Henrik, here is a bit larger patch, but it avoids appearance of incrementing frame counter in only one branch. Gabriele, could yo uplease try this one as well? Thanks!
Comment 7 Gabriele Mazzotta 2014-08-25 19:43:26 UTC
Yes, also this alternative fix works. Thanks.
Comment 8 Henrik Rydberg 2014-08-25 20:11:01 UTC
Perfect. Dmitry, I like your patch better than mine.
Comment 9 Dmitry Torokhov 2014-08-25 21:47:27 UTC
Excellent, I'll add your reviewed-by/tested-by and send to Linus in next push then.

Note You need to log in before you can comment on or make changes to this bug.