]> err.no Git - linux-2.6/blobdiff - drivers/hid/hid-input-quirks.c
HID: gyration sleep button quirk
[linux-2.6] / drivers / hid / hid-input-quirks.c
index 4c2052c658f1465f6a8d89494b03a8783a7ba6e3..9b58cdc24cce8ddba23c76bc675b4d799012734c 100644 (file)
@@ -438,6 +438,18 @@ int hidinput_event_quirks(struct hid_device *hid, struct hid_field *field, struc
                input_event(input, usage->type, REL_WHEEL, -value);
                return 1;
        }
+
+       /* Gyration MCE remote "Sleep" key */
+       if (hid->vendor == VENDOR_ID_GYRATION &&
+           hid->product == DEVICE_ID_GYRATION_REMOTE &&
+           (usage->hid & HID_USAGE_PAGE) == HID_UP_GENDESK &&
+           (usage->hid & 0xff) == 0x82) {
+               input_event(input, usage->type, usage->code, 1);
+               input_sync(input);
+               input_event(input, usage->type, usage->code, 0);
+               input_sync(input);
+               return 1;
+       }
        return 0;
 }