Skip to content

Commit 832e577

Browse files
Martin HilgendorfJiri Kosina
authored andcommitted
HID: elecom: add support for ELECOM M-DT2DRBK
The DT2DRBK trackball has 8 buttons, but the report descriptor only specifies 5. This patch adds the device ID and performs a similar fixup as for other ELECOM devices to enable the remaining 3 buttons. Signed-off-by: Martin Hilgendorf <martin.hilgendorf@posteo.de> Signed-off-by: Jiri Kosina <jkosina@suse.com>
1 parent ab1bb82 commit 832e577

File tree

3 files changed

+4
-0
lines changed

3 files changed

+4
-0
lines changed

drivers/hid/hid-elecom.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ static const __u8 *elecom_report_fixup(struct hid_device *hdev, __u8 *rdesc,
101101
*/
102102
mouse_button_fixup(hdev, rdesc, *rsize, 12, 30, 14, 20, 8);
103103
break;
104+
case USB_DEVICE_ID_ELECOM_M_DT2DRBK:
104105
case USB_DEVICE_ID_ELECOM_M_HT1DRBK_011C:
105106
/*
106107
* Report descriptor format:
@@ -123,6 +124,7 @@ static const struct hid_device_id elecom_devices[] = {
123124
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT4DRBK) },
124125
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1URBK) },
125126
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1DRBK) },
127+
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT2DRBK) },
126128
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_010C) },
127129
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_019B) },
128130
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1DRBK_010D) },

drivers/hid/hid-ids.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,7 @@
451451
#define USB_DEVICE_ID_ELECOM_M_XT4DRBK 0x00fd
452452
#define USB_DEVICE_ID_ELECOM_M_DT1URBK 0x00fe
453453
#define USB_DEVICE_ID_ELECOM_M_DT1DRBK 0x00ff
454+
#define USB_DEVICE_ID_ELECOM_M_DT2DRBK 0x018d
454455
#define USB_DEVICE_ID_ELECOM_M_HT1URBK_010C 0x010c
455456
#define USB_DEVICE_ID_ELECOM_M_HT1URBK_019B 0x019b
456457
#define USB_DEVICE_ID_ELECOM_M_HT1DRBK_010D 0x010d

drivers/hid/hid-quirks.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -411,6 +411,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
411411
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT4DRBK) },
412412
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1URBK) },
413413
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1DRBK) },
414+
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT2DRBK) },
414415
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_010C) },
415416
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_019B) },
416417
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1DRBK_010D) },

0 commit comments

Comments
 (0)