diff options
author | Jiri Kosina <jkosina@suse.cz> | 2018-04-05 07:16:37 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2018-04-05 07:16:37 -0400 |
commit | a9ef00aec7633b3be3b19a7fce9a8d13f5a07c1c (patch) | |
tree | a4bbd266b0567e10ebaf896ae5092f1c43f0fec8 | |
parent | b55dc1dc2790e69e45baf97243e28f258c6d5062 (diff) | |
parent | fbb77e88f08ce04daa9b1ff2381be7ebc9f24b6f (diff) |
Merge branch 'for-4.17/elecom' into for-linus
Support for new elecom device.
-rw-r--r-- | drivers/hid/Kconfig | 6 | ||||
-rw-r--r-- | drivers/hid/hid-elecom.c | 32 | ||||
-rw-r--r-- | drivers/hid/hid-ids.h | 13 | ||||
-rw-r--r-- | drivers/hid/hid-quirks.c | 13 |
4 files changed, 34 insertions, 30 deletions
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index 19c499f5623d..4989ec4028bf 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig | |||
@@ -280,9 +280,9 @@ config HID_ELECOM | |||
280 | ---help--- | 280 | ---help--- |
281 | Support for ELECOM devices: | 281 | Support for ELECOM devices: |
282 | - BM084 Bluetooth Mouse | 282 | - BM084 Bluetooth Mouse |
283 | - EX-G Trackball (Wired and wireless) | 283 | - EX-G Trackballs (M-XT3DRBK, M-XT3URBK) |
284 | - DEFT Trackball (Wired and wireless) | 284 | - DEFT Trackballs (M-DT1DRBK, M-DT1URBK, M-DT2DRBK, M-DT2URBK) |
285 | - HUGE Trackball (Wired and wireless) | 285 | - HUGE Trackballs (M-HT1DRBK, M-HT1URBK) |
286 | 286 | ||
287 | config HID_ELO | 287 | config HID_ELO |
288 | tristate "ELO USB 4000/4500 touchscreen" | 288 | tristate "ELO USB 4000/4500 touchscreen" |
diff --git a/drivers/hid/hid-elecom.c b/drivers/hid/hid-elecom.c index 1a1ecc491c02..ae8e9413c79d 100644 --- a/drivers/hid/hid-elecom.c +++ b/drivers/hid/hid-elecom.c | |||
@@ -1,9 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * HID driver for ELECOM devices: | 2 | * HID driver for ELECOM devices: |
3 | * - BM084 Bluetooth Mouse | 3 | * - BM084 Bluetooth Mouse |
4 | * - EX-G Trackball (Wired and wireless) | 4 | * - EX-G Trackballs (M-XT3DRBK, M-XT3URBK, M-XT4DRBK) |
5 | * - DEFT Trackball (Wired and wireless) | 5 | * - DEFT Trackballs (M-DT1DRBK, M-DT1URBK, M-DT2DRBK, M-DT2URBK) |
6 | * - HUGE Trackball (Wired and wireless) | 6 | * - HUGE Trackballs (M-HT1DRBK, M-HT1URBK) |
7 | * | 7 | * |
8 | * Copyright (c) 2010 Richard Nauber <Richard.Nauber@gmail.com> | 8 | * Copyright (c) 2010 Richard Nauber <Richard.Nauber@gmail.com> |
9 | * Copyright (c) 2016 Yuxuan Shui <yshuiv7@gmail.com> | 9 | * Copyright (c) 2016 Yuxuan Shui <yshuiv7@gmail.com> |
@@ -65,14 +65,15 @@ static __u8 *elecom_report_fixup(struct hid_device *hdev, __u8 *rdesc, | |||
65 | rdesc[47] = 0x00; | 65 | rdesc[47] = 0x00; |
66 | } | 66 | } |
67 | break; | 67 | break; |
68 | case USB_DEVICE_ID_ELECOM_EX_G_WIRED: | 68 | case USB_DEVICE_ID_ELECOM_M_XT3URBK: |
69 | case USB_DEVICE_ID_ELECOM_EX_G_WIRELESS: | 69 | case USB_DEVICE_ID_ELECOM_M_XT3DRBK: |
70 | case USB_DEVICE_ID_ELECOM_M_XT4DRBK: | ||
70 | mouse_button_fixup(hdev, rdesc, *rsize, 6); | 71 | mouse_button_fixup(hdev, rdesc, *rsize, 6); |
71 | break; | 72 | break; |
72 | case USB_DEVICE_ID_ELECOM_DEFT_WIRED: | 73 | case USB_DEVICE_ID_ELECOM_M_DT1URBK: |
73 | case USB_DEVICE_ID_ELECOM_DEFT_WIRELESS: | 74 | case USB_DEVICE_ID_ELECOM_M_DT1DRBK: |
74 | case USB_DEVICE_ID_ELECOM_HUGE_WIRED: | 75 | case USB_DEVICE_ID_ELECOM_M_HT1URBK: |
75 | case USB_DEVICE_ID_ELECOM_HUGE_WIRELESS: | 76 | case USB_DEVICE_ID_ELECOM_M_HT1DRBK: |
76 | mouse_button_fixup(hdev, rdesc, *rsize, 8); | 77 | mouse_button_fixup(hdev, rdesc, *rsize, 8); |
77 | break; | 78 | break; |
78 | } | 79 | } |
@@ -81,12 +82,13 @@ static __u8 *elecom_report_fixup(struct hid_device *hdev, __u8 *rdesc, | |||
81 | 82 | ||
82 | static const struct hid_device_id elecom_devices[] = { | 83 | static const struct hid_device_id elecom_devices[] = { |
83 | { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) }, | 84 | { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) }, |
84 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRED) }, | 85 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT3URBK) }, |
85 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRELESS) }, | 86 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT3DRBK) }, |
86 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRED) }, | 87 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT4DRBK) }, |
87 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRELESS) }, | 88 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1URBK) }, |
88 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_HUGE_WIRED) }, | 89 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1DRBK) }, |
89 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_HUGE_WIRELESS) }, | 90 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK) }, |
91 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1DRBK) }, | ||
90 | { } | 92 | { } |
91 | }; | 93 | }; |
92 | MODULE_DEVICE_TABLE(hid, elecom_devices); | 94 | MODULE_DEVICE_TABLE(hid, elecom_devices); |
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index a099e519482d..3fdd101119ec 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h | |||
@@ -372,12 +372,13 @@ | |||
372 | 372 | ||
373 | #define USB_VENDOR_ID_ELECOM 0x056e | 373 | #define USB_VENDOR_ID_ELECOM 0x056e |
374 | #define USB_DEVICE_ID_ELECOM_BM084 0x0061 | 374 | #define USB_DEVICE_ID_ELECOM_BM084 0x0061 |
375 | #define USB_DEVICE_ID_ELECOM_EX_G_WIRED 0x00fb | 375 | #define USB_DEVICE_ID_ELECOM_M_XT3URBK 0x00fb |
376 | #define USB_DEVICE_ID_ELECOM_EX_G_WIRELESS 0x00fc | 376 | #define USB_DEVICE_ID_ELECOM_M_XT3DRBK 0x00fc |
377 | #define USB_DEVICE_ID_ELECOM_DEFT_WIRED 0x00fe | 377 | #define USB_DEVICE_ID_ELECOM_M_XT4DRBK 0x00fd |
378 | #define USB_DEVICE_ID_ELECOM_DEFT_WIRELESS 0x00ff | 378 | #define USB_DEVICE_ID_ELECOM_M_DT1URBK 0x00fe |
379 | #define USB_DEVICE_ID_ELECOM_HUGE_WIRED 0x010c | 379 | #define USB_DEVICE_ID_ELECOM_M_DT1DRBK 0x00ff |
380 | #define USB_DEVICE_ID_ELECOM_HUGE_WIRELESS 0x010d | 380 | #define USB_DEVICE_ID_ELECOM_M_HT1URBK 0x010c |
381 | #define USB_DEVICE_ID_ELECOM_M_HT1DRBK 0x010d | ||
381 | 382 | ||
382 | #define USB_VENDOR_ID_DREAM_CHEEKY 0x1d34 | 383 | #define USB_VENDOR_ID_DREAM_CHEEKY 0x1d34 |
383 | #define USB_DEVICE_ID_DREAM_CHEEKY_WN 0x0004 | 384 | #define USB_DEVICE_ID_DREAM_CHEEKY_WN 0x0004 |
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c index 7203eba3c029..a67c599fa151 100644 --- a/drivers/hid/hid-quirks.c +++ b/drivers/hid/hid-quirks.c | |||
@@ -337,12 +337,13 @@ static const struct hid_device_id hid_have_special_driver[] = { | |||
337 | #endif | 337 | #endif |
338 | #if IS_ENABLED(CONFIG_HID_ELECOM) | 338 | #if IS_ENABLED(CONFIG_HID_ELECOM) |
339 | { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) }, | 339 | { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) }, |
340 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRED) }, | 340 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT3URBK) }, |
341 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_EX_G_WIRELESS) }, | 341 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT3DRBK) }, |
342 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRED) }, | 342 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_XT4DRBK) }, |
343 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_DEFT_WIRELESS) }, | 343 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1URBK) }, |
344 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_HUGE_WIRED) }, | 344 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_DT1DRBK) }, |
345 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_HUGE_WIRELESS) }, | 345 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1URBK) }, |
346 | { HID_USB_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_M_HT1DRBK) }, | ||
346 | #endif | 347 | #endif |
347 | #if IS_ENABLED(CONFIG_HID_ELO) | 348 | #if IS_ENABLED(CONFIG_HID_ELO) |
348 | { HID_USB_DEVICE(USB_VENDOR_ID_ELO, 0x0009) }, | 349 | { HID_USB_DEVICE(USB_VENDOR_ID_ELO, 0x0009) }, |