HID: asus: Add T100TA touchpad resolution info
authorHans de Goede <hdegoede@redhat.com>
Sun, 2 Jul 2017 14:34:14 +0000 (16:34 +0200)
committerJiri Kosina <jkosina@suse.cz>
Thu, 20 Jul 2017 14:01:10 +0000 (16:01 +0200)
The touchpad code is only used with the T100TA touchpad which
measures 75.5 x 41.5 mm, add corresponding resolution info.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-asus.c

index b759485a2926cb1fa3cad9f31bc1a5cd8bf4edcd..b2501b64ab9d839b245cfd5d894bda26dec23f76 100644 (file)
@@ -86,6 +86,8 @@ struct asus_kbd_leds {
 struct asus_touchpad_info {
        int max_x;
        int max_y;
+       int res_x;
+       int res_y;
        int contact_size;
        int max_contacts;
 };
@@ -108,6 +110,8 @@ static const struct asus_touchpad_info asus_i2c_tp = {
 static const struct asus_touchpad_info asus_t100ta_tp = {
        .max_x = 2240,
        .max_y = 1120,
+       .res_x = 30, /* units/mm */
+       .res_y = 27, /* units/mm */
        .contact_size = 5,
        .max_contacts = 5,
 };
@@ -361,6 +365,8 @@ static int asus_input_configured(struct hid_device *hdev, struct hid_input *hi)
                                     drvdata->tp->max_x, 0, 0);
                input_set_abs_params(input, ABS_MT_POSITION_Y, 0,
                                     drvdata->tp->max_y, 0, 0);
+               input_abs_set_res(input, ABS_MT_POSITION_X, drvdata->tp->res_x);
+               input_abs_set_res(input, ABS_MT_POSITION_Y, drvdata->tp->res_y);
                input_set_abs_params(input, ABS_TOOL_WIDTH, 0, MAX_TOUCH_MAJOR, 0, 0);
                input_set_abs_params(input, ABS_MT_TOUCH_MAJOR, 0, MAX_TOUCH_MAJOR, 0, 0);
                input_set_abs_params(input, ABS_MT_PRESSURE, 0, MAX_PRESSURE, 0, 0);