As of e0361b70175 ("Input: wacom_w8001 - split the touch and pen devices
into two devices") the touch events aren't multiplexed over the same device
anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then
it only ever sent MT_TOOL_TYPE_FINGER anyway.NOTES: 1) This patch backports the bug where 'input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch);' has been removed. This will be corrected in a subsequent patch. 2) This backport was accidentally skipped in the previous release and is thus applied out of order. 3) e0361b70175 was only backported to 2.6.38 and 3.7. Signed-off-by: Peter Hutterer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]> [[email protected]: Imported into input-wacom repository (5f7e544)] Signed-off-by: Jason Gerecke <[email protected]> [[email protected]: backported from input-wacom repository (215a2f5)] Signed-off-by: Aaron Skomra <[email protected]> --- 2.6.38/wacom_w8001.c | 3 --- 3.7/wacom_w8001.c | 3 --- 2 files changed, 6 deletions(-) diff --git a/2.6.38/wacom_w8001.c b/2.6.38/wacom_w8001.c index 7946419..1a33fad 100644 --- a/2.6.38/wacom_w8001.c +++ b/2.6.38/wacom_w8001.c @@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001) bool touch = data[0] & (1 << i); input_mt_slot(dev, i); - input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch); if (touch) { x = (data[6 * i + 1] << 7) | data[6 * i + 2]; y = (data[6 * i + 3] << 7) | data[6 * i + 4]; @@ -513,8 +512,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename, 0, touch.x, 0, 0); input_set_abs_params(dev, ABS_MT_POSITION_Y, 0, touch.y, 0, 0); - input_set_abs_params(dev, ABS_MT_TOOL_TYPE, - 0, MT_TOOL_MAX, 0, 0); strlcat(basename, " 2FG", basename_sz); if (w8001->max_pen_x && w8001->max_pen_y) diff --git a/3.7/wacom_w8001.c b/3.7/wacom_w8001.c index fe983e7..bab3c6a 100644 --- a/3.7/wacom_w8001.c +++ b/3.7/wacom_w8001.c @@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001) bool touch = data[0] & (1 << i); input_mt_slot(dev, i); - input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch); if (touch) { x = (data[6 * i + 1] << 7) | data[6 * i + 2]; y = (data[6 * i + 3] << 7) | data[6 * i + 4]; @@ -514,8 +513,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename, 0, touch.x, 0, 0); input_set_abs_params(dev, ABS_MT_POSITION_Y, 0, touch.y, 0, 0); - input_set_abs_params(dev, ABS_MT_TOOL_TYPE, - 0, MT_TOOL_MAX, 0, 0); strlcat(basename, " 2FG", basename_sz); if (w8001->max_pen_x && w8001->max_pen_y) -- 1.9.1 ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports.http://sdm.link/zohodev2dev _______________________________________________ Linuxwacom-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel
