Skip to content

Commit b8194c1

Browse files
Martin Hilgendorfgregkh
authored andcommitted
HID: elecom: add support for ELECOM M-DT2DRBK
commit 832e577 upstream. 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent c13e955 commit b8194c1

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
@@ -448,6 +448,7 @@
448448
#define USB_DEVICE_ID_ELECOM_M_XT4DRBK 0x00fd
449449
#define USB_DEVICE_ID_ELECOM_M_DT1URBK 0x00fe
450450
#define USB_DEVICE_ID_ELECOM_M_DT1DRBK 0x00ff
451+
#define USB_DEVICE_ID_ELECOM_M_DT2DRBK 0x018d
451452
#define USB_DEVICE_ID_ELECOM_M_HT1URBK_010C 0x010c
452453
#define USB_DEVICE_ID_ELECOM_M_HT1URBK_019B 0x019b
453454
#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
@@ -410,6 +410,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
410410
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT4DRBK) },
411411
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1URBK) },
412412
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1DRBK) },
413+
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT2DRBK) },
413414
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_010C) },
414415
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK_019B) },
415416
{ HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1DRBK_010D) },

0 commit comments

Comments
 (0)