| From 2bacedada682d5485424f5227f27a3d5d6eb551c Mon Sep 17 00:00:00 2001 |
| From: Giedrius Statkevičius <giedrius.statkevicius@gmail.com> |
| Date: Sat, 27 Dec 2014 00:28:30 +0200 |
| Subject: HID: Add a new id 0x501a for Genius MousePen i608X |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Giedrius Statkevičius <giedrius.statkevicius@gmail.com> |
| |
| commit 2bacedada682d5485424f5227f27a3d5d6eb551c upstream. |
| |
| New Genius MousePen i608X devices have a new id 0x501a instead of the |
| old 0x5011 so add a new #define with "_2" appended and change required |
| places. |
| |
| The remaining two checkpatch warnings about line length |
| being over 80 characters are present in the original files too and this |
| patch was made in the same style (no line break). |
| |
| Just adding a new id and changing the required places should make the |
| new device work without any issues according to the bug report in the |
| following url. |
| |
| This patch was made according to and fixes: |
| https://bugzilla.kernel.org/show_bug.cgi?id=67111 |
| |
| Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@gmail.com> |
| Signed-off-by: Jiri Kosina <jkosina@suse.cz> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/hid/hid-core.c | 1 + |
| drivers/hid/hid-ids.h | 1 + |
| drivers/hid/hid-kye.c | 4 ++++ |
| drivers/hid/usbhid/hid-quirks.c | 1 + |
| 4 files changed, 7 insertions(+) |
| |
| --- a/drivers/hid/hid-core.c |
| +++ b/drivers/hid/hid-core.c |
| @@ -1809,6 +1809,7 @@ static const struct hid_device_id hid_ha |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_ERGO_525V) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_I405X) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X) }, |
| + { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_M610X) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_LCPOWER, USB_DEVICE_ID_LCPOWER_LC1000 ) }, |
| --- a/drivers/hid/hid-ids.h |
| +++ b/drivers/hid/hid-ids.h |
| @@ -526,6 +526,7 @@ |
| #define USB_DEVICE_ID_KYE_GPEN_560 0x5003 |
| #define USB_DEVICE_ID_KYE_EASYPEN_I405X 0x5010 |
| #define USB_DEVICE_ID_KYE_MOUSEPEN_I608X 0x5011 |
| +#define USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2 0x501a |
| #define USB_DEVICE_ID_KYE_EASYPEN_M610X 0x5013 |
| |
| #define USB_VENDOR_ID_LABTEC 0x1020 |
| --- a/drivers/hid/hid-kye.c |
| +++ b/drivers/hid/hid-kye.c |
| @@ -323,6 +323,7 @@ static __u8 *kye_report_fixup(struct hid |
| } |
| break; |
| case USB_DEVICE_ID_KYE_MOUSEPEN_I608X: |
| + case USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2: |
| if (*rsize == MOUSEPEN_I608X_RDESC_ORIG_SIZE) { |
| rdesc = mousepen_i608x_rdesc_fixed; |
| *rsize = sizeof(mousepen_i608x_rdesc_fixed); |
| @@ -415,6 +416,7 @@ static int kye_probe(struct hid_device * |
| switch (id->product) { |
| case USB_DEVICE_ID_KYE_EASYPEN_I405X: |
| case USB_DEVICE_ID_KYE_MOUSEPEN_I608X: |
| + case USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2: |
| case USB_DEVICE_ID_KYE_EASYPEN_M610X: |
| ret = kye_tablet_enable(hdev); |
| if (ret) { |
| @@ -446,6 +448,8 @@ static const struct hid_device_id kye_de |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, |
| USB_DEVICE_ID_KYE_MOUSEPEN_I608X) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, |
| + USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2) }, |
| + { HID_USB_DEVICE(USB_VENDOR_ID_KYE, |
| USB_DEVICE_ID_KYE_EASYPEN_M610X) }, |
| { HID_USB_DEVICE(USB_VENDOR_ID_KYE, |
| USB_DEVICE_ID_GENIUS_GILA_GAMING_MOUSE) }, |
| --- a/drivers/hid/usbhid/hid-quirks.c |
| +++ b/drivers/hid/usbhid/hid-quirks.c |
| @@ -123,6 +123,7 @@ static const struct hid_blacklist { |
| { USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS, HID_QUIRK_MULTI_INPUT }, |
| { USB_VENDOR_ID_SIGMA_MICRO, USB_DEVICE_ID_SIGMA_MICRO_KEYBOARD, HID_QUIRK_NO_INIT_REPORTS }, |
| { USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X, HID_QUIRK_MULTI_INPUT }, |
| + { USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2, HID_QUIRK_MULTI_INPUT }, |
| { USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_M610X, HID_QUIRK_MULTI_INPUT }, |
| { USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_DUOSENSE, HID_QUIRK_NO_INIT_REPORTS }, |
| { USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD, HID_QUIRK_NO_INIT_REPORTS }, |