From: makarand.karvekar Date: Tue, 7 Sep 2010 19:54:28 +0000 (-0500) Subject: input: touchscreep :qtouch: report the finger tracking id X-Git-Tag: firefly_0821_release~9834^2~584 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=17ab6bba465e730ea62b2dcb7b526b755f2fe083;p=firefly-linux-kernel-4.4.55.git input: touchscreep :qtouch: report the finger tracking id USE ABS_MT_TRACKING_ID to report the finger tracking id Change-Id: I8198eea12c5a90607a6dab48d96c6872a1c5e783 Signed-off-by: makarand.karvekar --- diff --git a/drivers/input/touchscreen/qtouch_obp_ts.c b/drivers/input/touchscreen/qtouch_obp_ts.c index 3f47ee7e7d5c..3d84d300ee81 100644 --- a/drivers/input/touchscreen/qtouch_obp_ts.c +++ b/drivers/input/touchscreen/qtouch_obp_ts.c @@ -908,6 +908,8 @@ static int do_touch_multi_msg(struct qtouch_ts_data *ts, struct qtm_object *obj, ts->finger_data[i].x_data); input_report_abs(ts->input_dev, ABS_MT_POSITION_Y, ts->finger_data[i].y_data); + input_report_abs(ts->input_dev, ABS_MT_TRACKING_ID, + i+1); input_mt_sync(ts->input_dev); } input_sync(ts->input_dev); @@ -1128,6 +1130,8 @@ static int qtouch_ts_register_input(struct qtouch_ts_data *ts) input_set_abs_params(ts->input_dev, ABS_MT_WIDTH_MAJOR, ts->pdata->abs_min_w, ts->pdata->abs_max_w, ts->pdata->fuzz_w, 0); + input_set_abs_params(ts->input_dev, ABS_MT_TRACKING_ID, + 0, ts->pdata->multi_touch_cfg.num_touch, 1, 0); } memset(&ts->finger_data[0], 0, @@ -1929,6 +1933,7 @@ static int qtouch_ts_resume(struct i2c_client *client) if (ts->finger_data[i].down == 0) continue; input_report_abs(ts->input_dev, ABS_MT_TOUCH_MAJOR, 0); + input_report_abs(ts->input_dev, ABS_MT_TRACKING_ID, i+1); input_mt_sync(ts->input_dev); memset(&ts->finger_data[i], 0, sizeof(struct coordinate_map)); }