summaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-quirks.c
diff options
context:
space:
mode:
authorTomasz Kramkowski <tk@the-tk.com>2017-12-19 20:44:36 +0000
committerJiri Kosina <jkosina@suse.cz>2018-01-23 15:39:54 +0100
commitac58eec2c547587c41c1436947d545f99c1553c6 (patch)
treed30d16919497e8048d43368c78a33691cf1521d9 /drivers/hid/hid-quirks.c
parent332347d4c7a1353cc0aa9a3f0cd238d36ce0d932 (diff)
downloadlinux-ac58eec2c547587c41c1436947d545f99c1553c6.tar.bz2
HID: elecom: rewrite report fixup for EX-G and future mice
This patch rewrites the mouse report fixup used for the DEFT and HUGE elecom trackballs in order to make it generic enough to fix other elecom mice with similar issues. This patch also uses this new report fixup function to fix the Elecom EX-G trackball which has 6 physical buttons and a similar issue to the other two mice. Elecom's track record has so far shown that they like to re-use the same report descriptor for multiple different mice regardless of the number of buttons the mouse has. This means that the missing buttons on multiple mice can be fixed in one function without introducing phantom buttons which would in turn cause the number of mouse buttons to be misreported to userspace. This patch drops the very verbose report descriptor "diff" comment for a more abridged yet hopefully just as informative generic version. Signed-off-by: Tomasz Kramkowski <tk@the-tk.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/hid-quirks.c')
-rw-r--r--drivers/hid/hid-quirks.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
index 20e68a7ac79f..2b43437401e6 100644
--- a/drivers/hid/hid-quirks.c
+++ b/drivers/hid/hid-quirks.c
@@ -335,6 +335,8 @@ static const struct hid_device_id hid_have_special_driver[] = {
#endif
#if IS_ENABLED(CONFIG_HID_ELECOM)
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRED) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRELESS) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRED) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRELESS) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_HUGE_WIRED) },