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.
Does reverting f8ec894945e7d205ce62be59e55e72c4304e4739 help? I think we should increment mt->frame++ unconditionally, not only when we are dropping unused events.
Yes, reverting it helps.
Created attachment 148131 [details] patch for linus master
Thanks Gabriele, and thanks Dmitry for the CC. Does this patch help as well? Henrik
Yes, the patch solves the problem, thanks.
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!
Yes, also this alternative fix works. Thanks.
Perfect. Dmitry, I like your patch better than mine.
Excellent, I'll add your reviewed-by/tested-by and send to Linus in next push then.