From patchwork Fri Sep 5 01:08:05 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John DeSilva X-Patchwork-Id: 4848961 X-Patchwork-Delegate: jikos@jikos.cz Return-Path: X-Original-To: patchwork-linux-input@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 31FE6C0338 for ; Fri, 5 Sep 2014 01:09:30 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 288A120295 for ; Fri, 5 Sep 2014 01:09:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id ED90E2027D for ; Fri, 5 Sep 2014 01:09:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754933AbaIEBJF (ORCPT ); Thu, 4 Sep 2014 21:09:05 -0400 Received: from mail-ig0-f170.google.com ([209.85.213.170]:33167 "EHLO mail-ig0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754184AbaIEBJE (ORCPT ); Thu, 4 Sep 2014 21:09:04 -0400 Received: by mail-ig0-f170.google.com with SMTP id h3so19152igd.3 for ; Thu, 04 Sep 2014 18:09:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=XnVnL7ShAc9DntLGLMV4BOXCn5Twwg4K7Ic/40B0l7U=; b=MWnU/QKn1d/YFOLXNaiCbYFhI5dNetCQs1tezlQHdtpBoLrR1Hb1pGHK3jrw+x2KsK oOwcgV3K1c7u8fSjay50uKeRWOrKcfkAkKcJ5sDfQ+8MhQ4vF9AMLc6PBAHFpRt/YYi1 6Zgq/zULOrb2G3qLvEU9wakjQ+TGPKCuj19z1djund3RdzoafhD8XmRjFxGl+6lMPyO1 C4WhqUieCs15WL7IydGZWDq5UT27TAQ+erIKqgD9ItOkyyMDNyeDVA0la66z6y81O9oe NPkxrn1RP4KS9DUHOaAm8k/Cq7aHlg7qSyrxlIEb2Figp+18iDWsLkOGQj8kMabRJc/h rJEA== X-Gm-Message-State: ALoCoQkFtIS0KcgCzm7Y9GF0Bq+NUAuMwKXsj+IcvhImiEhRprfR9GMMZ+et6LWOPRCqAiNFSpYJ X-Received: by 10.50.72.43 with SMTP id a11mr11485598igv.23.1409879342359; Thu, 04 Sep 2014 18:09:02 -0700 (PDT) Received: from localhost.localdomain (c-98-243-88-220.hsd1.mi.comcast.net. [98.243.88.220]) by mx.google.com with ESMTPSA id m4sm2370785igr.20.2014.09.04.18.09.00 for (version=TLSv1.2 cipher=AES128-GCM-SHA256 bits=128/128); Thu, 04 Sep 2014 18:09:01 -0700 (PDT) From: John DeSilva To: jkosina@suse.cz Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, John DeSilva Subject: [PATCH] HID: Add Holtek USB ID 04d9:a0c2 ETEKCITY Scroll Date: Thu, 4 Sep 2014 21:08:05 -0400 Message-Id: <1409879285-15816-1-git-send-email-desilvjo@umich.edu> X-Mailer: git-send-email 1.8.5.5 Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org X-Spam-Status: No, score=-8.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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, 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 --- drivers/hid/hid-holtek-mouse.c | 4 ++++ drivers/hid/hid-ids.h | 1 + 2 files changed, 5 insertions(+) diff --git a/drivers/hid/hid-holtek-mouse.c b/drivers/hid/hid-holtek-mouse.c index d60fbd0..78b3a0c 100644 --- a/drivers/hid/hid-holtek-mouse.c +++ b/drivers/hid/hid-holtek-mouse.c @@ -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); diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 25cd674..c7b36ad 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -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