Hide Forgot
Description of problem: Touchscreen is not working on the Dell ST2220T monitor. It is being detected as a "LG Display LGD-MultiTouch", but controls are wrong. Version-Release number of selected component (if applicable): kernel-3.2.10-3.fc16.x86_64 How reproducible: Always Steps to Reproduce: 1. Plug in the monitor 2. Touch screen Actual results: - Tapping with one finger generates a mouse click without moving the pointer to the tapped location first. Resulting in a click to the wrong location. - Moving one finger across the screen does nothing. - Moving two fingers across the screen moves the pointer while simulating the left mouse button being clicked. Expected results: - Tapping with one finger generates a mouse click to the tapped location. - Moving one finger across the screen moves the pointer. Additional info: When tapping with one finger, evtest says: Event: time 1332267708.802840, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 113 Event: time 1332267708.802851, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1 Event: time 1332267708.802854, -------------- SYN_REPORT ------------ Event: time 1332267708.858834, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1 Event: time 1332267708.858843, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0 Event: time 1332267708.858844, -------------- SYN_REPORT ------------ When moving one finger across the screen, evtest says: Event: time 1332268045.733760, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 0 Event: time 1332268045.733761, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 125 Event: time 1332268045.733764, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1 Event: time 1332268045.733765, -------------- SYN_REPORT ------------ Event: time 1332268045.741755, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 65535 Event: time 1332268045.741755, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 65535 Event: time 1332268045.741758, type 3 (EV_ABS), code 0 (ABS_X), value 65535 Event: time 1332268045.741758, type 3 (EV_ABS), code 1 (ABS_Y), value 65535 Event: time 1332268045.741758, -------------- SYN_REPORT ------------ Event: time 1332268046.965754, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1 Event: time 1332268046.965756, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0 Event: time 1332268046.965757, -------------- SYN_REPORT ------------ When moving two fingers across the screen, evtest says: Event: time 1332267846.981192, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 0 Event: time 1332267846.981192, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 123 Event: time 1332267846.981193, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 773 Event: time 1332267846.981193, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 506 Event: time 1332267846.981194, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 1 Event: time 1332267846.981194, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 124 Event: time 1332267846.981194, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1034 Event: time 1332267846.981195, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 387 Event: time 1332267846.981197, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1 Event: time 1332267846.981198, type 3 (EV_ABS), code 0 (ABS_X), value 773 Event: time 1332267846.981198, type 3 (EV_ABS), code 1 (ABS_Y), value 506 Event: time 1332267846.981198, -------------- SYN_REPORT ------------ Event: time 1332267846.989185, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 0 Event: time 1332267846.989185, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 887 Event: time 1332267846.989186, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 501 Event: time 1332267846.989186, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 1 Event: time 1332267846.989187, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1033 Event: time 1332267846.989187, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 393 Event: time 1332267846.989189, type 3 (EV_ABS), code 0 (ABS_X), value 887 Event: time 1332267846.989190, type 3 (EV_ABS), code 1 (ABS_Y), value 501 Event: time 1332267846.989190, -------------- SYN_REPORT ------------ Event: time 1332267846.997186, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 0 Event: time 1332267846.997186, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 506 Event: time 1332267846.997187, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 1 Event: time 1332267846.997187, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1032 Event: time 1332267846.997188, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 399 Event: time 1332267846.997190, type 3 (EV_ABS), code 1 (ABS_Y), value 506 Event: time 1332267846.997191, -------------- SYN_REPORT ------------ Event: time 1332267847.005185, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 0 Event: time 1332267847.005185, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 512 Event: time 1332267847.005186, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 1 Event: time 1332267847.005186, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1031 Event: time 1332267847.005186, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 405 Event: time 1332267847.005189, type 3 (EV_ABS), code 1 (ABS_Y), value 512 ..........................more....................... Event: time 1332267847.113186, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1 Event: time 1332267847.113187, type 3 (EV_ABS), code 47 (ABS_MT_SLOT), value 1 Event: time 1332267847.113187, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1 Event: time 1332267847.113189, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0 Event: time 1332267847.113189, -------------- SYN_REPORT ------------ There is a patch to fix issues related to this input device: https://lkml.org/lkml/2012/3/6/331 But it seems to be part of a bunch of other hid-multitouch patches that have not made their way to the kernel yet. I attempted to apply it to hid-multitouch.c of 3.2.10 but other patches are missing to apply it successfully.
F16 is moving to 3.3 now, so this might be a bit more feasible to backport. I will look at it tomorrow. Thank you for the pointer to the patch.
I applied the patch to 3.2.10-3.fc16 and manually made the 1 modification that failed (chunk 9 - removing one line in mt_probe). It compiled and the touchscreen now works properly.
The commits for this went into the 3.4 kernel. F16 has been rebased on that for a while now. If you are still having problems with 3.4.9-2 or newer, please let us know.