input_mt_sync_frame is used by other wacom devices in wacom_wac.c to close the frame and emulate pointer events. Let's follow them. Touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. Signed-off-by: Ping Cheng <pingc@xxxxxxxxx> Signed-off-by: Peter Hutterer <peter.hutterer@xxxxxxxxx> --- v2: moved input_abs_set_res into a separate patch, as suggested by Dmitry. --- drivers/input/touchscreen/wacom_w8001.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/drivers/input/touchscreen/wacom_w8001.c b/drivers/input/touchscreen/wacom_w8001.c index 7e807af..541a8df 100644 --- a/drivers/input/touchscreen/wacom_w8001.c +++ b/drivers/input/touchscreen/wacom_w8001.c @@ -170,16 +170,8 @@ static void parse_multi_touch(struct w8001 *w8001) } } - /* emulate single touch events when stylus is out of proximity. - * This is to make single touch backward support consistent - * across all Wacom single touch devices. - */ - if (w8001->type != BTN_TOOL_PEN && - w8001->type != BTN_TOOL_RUBBER) { - w8001->type = count == 1 ? BTN_TOOL_FINGER : KEY_RESERVED; - input_mt_report_pointer_emulation(dev, true); - } - + w8001->type = KEY_RESERVED; + input_mt_sync_frame(dev); input_sync(dev); } @@ -508,7 +500,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename, case 5: w8001->pktlen = W8001_PKTLEN_TOUCH2FG; - __set_bit(BTN_TOOL_DOUBLETAP, dev->keybit); error = input_mt_init_slots(dev, 2, 0); if (error) { pr_debug("w8001: failed to initialize MT slots: %d\n", error); @@ -519,8 +510,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); input_abs_set_res(dev, ABS_MT_POSITION_X, touch.panel_res); input_abs_set_res(dev, ABS_MT_POSITION_Y, touch.panel_res); -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html