hid: Ortek W/L rdesc has incorrect Logical Maximum for keyboard (resend)
PATCH 1/1 hid: Ortek W/L rdesc has incorrect Logical Maximum for keyboard (resend)
The Ortek WKB-2000 had the same rdesc bug -- the Logical Maximum value was reported as '1' instead of the correct value (146), preventing most of the keyboard keys from working. This patch simply shares precisely the same quirk code for this other device.
--- drivers/hid/hid-core.c | 1 + drivers/hid/hid-ids.h | 1 + drivers/hid/hid-ortek.c | 3 ++- 3 files changed, 4 insertions(+), 1 deletions(-)
drivers/hid/hid-core.c +0 -0
@@ -1401,6 +1401,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_TOUCH_SCREEN_17) },
{ HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_TOUCH_SCREEN_18) },
{ HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WKB2000) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WL) },
{ HID_USB_DEVICE(USB_VENDOR_ID_PETALYNX, USB_DEVICE_ID_PETALYNX_MAXTER_REMOTE) }, { HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH) },
{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_PIXART_IMAGING_INC_OPTICAL_TOUCH_SCREEN) },
drivers/hid/hid-ids.h +1 -0
@@ -467,6 +467,7 @@#define USB_VENDOR_ID_ORTEK 0x05a4#define USB_DEVICE_ID_ORTEK_WKB2000 0x2000 +#define USB_DEVICE_ID_ORTEK_WL 0x1700#define USB_VENDOR_ID_PANJIT 0x134c
drivers/hid/hid-ortek.c +0 -0
@@ -23,7 +23,7 @@ static __u8 *ortek_report_fixup(struct hid_device *hdev, __u8 *rdesc,
unsigned int *rsize)
{
if (*rsize >= 56 && rdesc[54] == 0x25 && rdesc[55] == 0x01) {
- hid_info(hdev, "Fixing up Ortek WKB-2000 report descriptor\n");
+ hid_info(hdev, "Fixing up Ortek WKB-2000 or W/L report descriptor\n");
rdesc[55] = 0x92;
}
return rdesc;@@ -31,6 +31,7 @@ static __u8 *ortek_report_fixup(struct hid_device *hdev, __u8 *rdesc,
static const struct hid_device_id ortek_devices[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WKB2000) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WL) },
{ } };
MODULE_DEVICE_TABLE(hid, ortek_devices);
Signature · 1 line
[email protected]
_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable
Quoted 6 lines · Keith Packard
The Ortek WKB-2000 had the same rdesc bug -- the Logical Maximum value was reported as '1' instead of the correct value (146), preventing most of the keyboard keys from working. This patch simply shares precisely the same quirk code for this other device.
Quoted 6 lines
Signed-off-by Keith Packard <[email protected]>--- drivers/hid/hid-core.c | 1 + drivers/hid/hid-ids.h | 1 + drivers/hid/hid-ortek.c | 3 ++- 3 files changed, 4 insertions(+), 1 deletions(-)
Jiri, did this patch slip through the cracks?
curious,
greg k-h
Quoted 56 lines
drivers/hid/hid-core.c +1
-0@@ -1401,6 +1401,7 @@ static const struct hid_device_id hid_have_special_driver[] = { { HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_TOUCH_SCREEN_17) }, { HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_TOUCH_SCREEN_18) }, { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WKB2000) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WL) }, { HID_USB_DEVICE(USB_VENDOR_ID_PETALYNX, USB_DEVICE_ID_PETALYNX_MAXTER_REMOTE) }, { HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH) }, { HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_PIXART_IMAGING_INC_OPTICAL_TOUCH_SCREEN) },drivers/hid/hid-ids.h +1
-0@@ -467,6 +467,7 @@#define USB_VENDOR_ID_ORTEK 0x05a4#define USB_DEVICE_ID_ORTEK_WKB2000 0x2000 +#define USB_DEVICE_ID_ORTEK_WL 0x1700#define USB_VENDOR_ID_PANJIT 0x134cdrivers/hid/hid-ortek.c +2
-1@@ -23,7 +23,7 @@ static __u8 *ortek_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) {if (*rsize >=56 && rdesc[54 ] ==0x25 && rdesc[55 ] ==0x01 ) { -hid_info (hdev,"Fixing up Ortek WKB-2000 report descriptor\n" ); +hid_info (hdev,"Fixing up Ortek WKB-2000 or W/L report descriptor\n" ); rdesc[55 ] =0x92 ; }return rdesc;@@ -31,6 +31,7 @@ static __u8 *ortek_report_fixup(struct hid_device *hdev, __u8 *rdesc,static const struct hid_device_id ortek_devices[] = { {HID_USB_DEVICE (USB_VENDOR_ID_ORTEK ,USB_DEVICE_ID_ORTEK_WKB2000 ) }, + {HID_USB_DEVICE (USB_VENDOR_ID_ORTEK ,USB_DEVICE_ID_ORTEK_WL ) }, { } };MODULE_DEVICE_TABLE (hid, ortek_devices);Signature · 9 lines
-- [email protected] _______________________________________________ stable mailing list [email protected] http://linux.kernel.org/mailman/listinfo/stable