HID: Add Holtek USB ID 04d9:a0c2 ETEKCITY Scroll
The report descriptor for the HOLTEK USB ID 04d9:a0c2 (ETEKCITY Scroll T-140 Gaming Mouse) is set to a very large amount of consumer usages (2^16), exceeding HID_MAX_USAGES. Added id, bindings and comments for the mouse, added to hid_have_special_driver, and reduced the usage and logical maximums to 0x2fff, consistent with the other mice in the category. Tested on the hardware. Signed-off-by: John C. DeSilva <desilvjo@umich.edu> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
643727a92e
commit
5df4eb054f
3 changed files with 6 additions and 0 deletions
|
@ -1793,6 +1793,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
|
|||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A070) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A072) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A081) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A0C2) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HUION, USB_DEVICE_ID_HUION_TABLET) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_JESS2, USB_DEVICE_ID_JESS2_COLOR_RUMBLE_PAD) },
|
||||
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ION, USB_DEVICE_ID_ICADE) },
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
* and Zalman ZM-GM1
|
||||
* - USB ID 04d9:a081, sold as SHARKOON DarkGlider Gaming mouse
|
||||
* - USB ID 04d9:a072, sold as LEETGION Hellion Gaming Mouse
|
||||
* - USB ID 04d9:a0c2, sold as ETEKCITY Scroll T-140 Gaming Mouse
|
||||
*/
|
||||
|
||||
static __u8 *holtek_mouse_report_fixup(struct hid_device *hdev, __u8 *rdesc,
|
||||
|
@ -42,6 +43,7 @@ static __u8 *holtek_mouse_report_fixup(struct hid_device *hdev, __u8 *rdesc,
|
|||
switch (hdev->product) {
|
||||
case USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A067:
|
||||
case USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A072:
|
||||
case USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A0C2:
|
||||
if (*rsize >= 122 && rdesc[115] == 0xff && rdesc[116] == 0x7f
|
||||
&& rdesc[120] == 0xff && rdesc[121] == 0x7f) {
|
||||
hid_info(hdev, "Fixing up report descriptor\n");
|
||||
|
@ -74,6 +76,8 @@ static const struct hid_device_id holtek_mouse_devices[] = {
|
|||
USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A072) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT,
|
||||
USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A081) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT,
|
||||
USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A0C2) },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(hid, holtek_mouse_devices);
|
||||
|
|
|
@ -479,6 +479,7 @@
|
|||
#define USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A070 0xa070
|
||||
#define USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A072 0xa072
|
||||
#define USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A081 0xa081
|
||||
#define USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A0C2 0xa0c2
|
||||
#define USB_DEVICE_ID_HOLTEK_ALT_KEYBOARD_A096 0xa096
|
||||
|
||||
#define USB_VENDOR_ID_IMATION 0x0718
|
||||
|
|
Loading…
Reference in a new issue