HID: asus: Simplify skipping of mappings for Asus T100CHI keyboard-dock
authorHans de Goede <hdegoede@redhat.com>
Tue, 28 Apr 2020 14:22:50 +0000 (16:22 +0200)
committerJiri Kosina <jkosina@suse.cz>
Wed, 6 May 2020 09:40:03 +0000 (11:40 +0200)
Before this commit the code was trying to keep the mapping for the
left mouse-button, do avoid the hidinput_has_been_populated() check
in hid-input.c from triggering and causing the touchpad input_dev ro
get cleaned up.

But the hidinput_has_been_populated() check happens after the
input_configured callback which sets up all the input bit for the
touchpad, so there is no need to preserve the left button mapping.

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

index ac224c32eeb69020480294704516e1160601634b..b3292ff3f61a15de3efe68f4752677e3054029a2 100644 (file)
@@ -677,20 +677,13 @@ static int asus_input_mapping(struct hid_device *hdev,
         * This avoids a bunch of non-functional hid_input devices getting
         * created because of the T100CHI using HID_QUIRK_MULTI_INPUT.
         */
-       if (drvdata->quirks & (QUIRK_T100CHI | QUIRK_T90CHI)) {
-               if (field->application == (HID_UP_GENDESK | 0x0080) ||
-                   usage->hid == (HID_UP_GENDEVCTRLS | 0x0024) ||
-                   usage->hid == (HID_UP_GENDEVCTRLS | 0x0025) ||
-                   usage->hid == (HID_UP_GENDEVCTRLS | 0x0026))
-                       return -1;
-               /*
-                * We use the hid_input for the mouse report for the touchpad,
-                * keep the left button, to avoid the core removing it.
-                */
-               if (field->application == HID_GD_MOUSE &&
-                   usage->hid != (HID_UP_BUTTON | 1))
-                       return -1;
-       }
+       if ((drvdata->quirks & (QUIRK_T100CHI | QUIRK_T90CHI)) &&
+           (field->application == (HID_UP_GENDESK | 0x0080) ||
+            field->application == HID_GD_MOUSE ||
+            usage->hid == (HID_UP_GENDEVCTRLS | 0x0024) ||
+            usage->hid == (HID_UP_GENDEVCTRLS | 0x0025) ||
+            usage->hid == (HID_UP_GENDEVCTRLS | 0x0026)))
+               return -1;
 
        /* ASUS-specific keyboard hotkeys */
        if ((usage->hid & HID_USAGE_PAGE) == 0xff310000) {