Commit 477baf7e authored by Dmitry Torokhov's avatar Dmitry Torokhov

Input: mms114 - mark as direct input device

mms14 is a touchscreen and thus a direct input device; let's mark it
as such. This also allows us to drop some initialization code as
input_init_mt_slots() will do that for us.

Also add error handling for input_mt_init_slots().
Reviewed-by: default avatarSimon Shields <simon@lineageos.org>
Tested-by: default avatarSimon Shields <simon@lineageos.org>
Reviewed-by: default avatarAndi Shyti <andi.shyti@samsung.com>
Tested-by: default avatarAndi Shyti <andi.shyti@samsung.com>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 5e703b88
...@@ -462,14 +462,6 @@ static int mms114_probe(struct i2c_client *client, ...@@ -462,14 +462,6 @@ static int mms114_probe(struct i2c_client *client,
input_dev->open = mms114_input_open; input_dev->open = mms114_input_open;
input_dev->close = mms114_input_close; input_dev->close = mms114_input_close;
__set_bit(EV_ABS, input_dev->evbit);
__set_bit(EV_KEY, input_dev->evbit);
__set_bit(BTN_TOUCH, input_dev->keybit);
input_set_abs_params(input_dev, ABS_X, 0, data->pdata->x_size, 0, 0);
input_set_abs_params(input_dev, ABS_Y, 0, data->pdata->y_size, 0, 0);
/* For multi touch */
input_mt_init_slots(input_dev, MMS114_MAX_TOUCH, 0);
input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR, input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR,
0, MMS114_MAX_AREA, 0, 0); 0, MMS114_MAX_AREA, 0, 0);
input_set_abs_params(input_dev, ABS_MT_POSITION_X, input_set_abs_params(input_dev, ABS_MT_POSITION_X,
...@@ -478,6 +470,11 @@ static int mms114_probe(struct i2c_client *client, ...@@ -478,6 +470,11 @@ static int mms114_probe(struct i2c_client *client,
0, data->pdata->y_size, 0, 0); 0, data->pdata->y_size, 0, 0);
input_set_abs_params(input_dev, ABS_MT_PRESSURE, 0, 255, 0, 0); input_set_abs_params(input_dev, ABS_MT_PRESSURE, 0, 255, 0, 0);
error = input_mt_init_slots(input_dev, MMS114_MAX_TOUCH,
INPUT_MT_DIRECT);
if (error)
return error;
input_set_drvdata(input_dev, data); input_set_drvdata(input_dev, data);
i2c_set_clientdata(client, data); i2c_set_clientdata(client, data);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment