linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] USB: quirks: Fix another ELAN touchscreen
@ 2015-11-22  4:06 Adrien Vergé
  2015-11-23 14:52 ` Jiri Kosina
                   ` (4 more replies)
  0 siblings, 5 replies; 22+ messages in thread
From: Adrien Vergé @ 2015-11-22  4:06 UTC (permalink / raw)
  To: Jiri Kosina
  Cc: Greg Kroah-Hartman, Macpaul Lin, Vincent Palatin, Logan Gunthorpe,
	Hans de Goede, Adrien Vergé, Yao-Wen Mao,
	linux-input-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-usb-u79uwXL29TY76Z2rM5mHXA

Like other buggy models that had their fixes [1], the touchscreen with
id 04f3:21b8 from ELAN Microelectronics needs the device-qualifier
quirk. Otherwise, it fails to respond, blocks the boot for a random
amount of time and pollutes dmesg with:

[ 2887.373196] usb 1-5: new full-speed USB device number 41 using xhci_hcd
[ 2889.502000] usb 1-5: unable to read config index 0 descriptor/start: -71
[ 2889.502005] usb 1-5: can't read configurations, error -71
[ 2889.654571] usb 1-5: new full-speed USB device number 42 using xhci_hcd
[ 2891.783438] usb 1-5: unable to read config index 0 descriptor/start: -71
[ 2891.783443] usb 1-5: can't read configurations, error -71

[1]: See commits c68929f, 876af5d, d749947, a32c99e and dc703ec.

Tested-by: Adrien Vergé <adrienverge-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 drivers/hid/hid-ids.h           | 1 +
 drivers/hid/usbhid/hid-quirks.c | 1 +
 drivers/usb/core/quirks.c       | 3 +++
 3 files changed, 5 insertions(+)

diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index ac1feea..6b68408 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -321,6 +321,7 @@
 #define USB_DEVICE_ID_ELAN_TOUCHSCREEN_0103	0x0103
 #define USB_DEVICE_ID_ELAN_TOUCHSCREEN_010c	0x010c
 #define USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F	0x016f
+#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_21B8	0x21b8
 
 #define USB_VENDOR_ID_ELECOM		0x056e
 #define USB_DEVICE_ID_ELECOM_BM084	0x0061
diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
index 94bb137..7a45942 100644
--- a/drivers/hid/usbhid/hid-quirks.c
+++ b/drivers/hid/usbhid/hid-quirks.c
@@ -77,6 +77,7 @@ static const struct hid_blacklist {
 	{ USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_0103, HID_QUIRK_ALWAYS_POLL },
 	{ USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_010c, HID_QUIRK_ALWAYS_POLL },
 	{ USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F, HID_QUIRK_ALWAYS_POLL },
+	{ USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_21B8, HID_QUIRK_ALWAYS_POLL },
 	{ USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
 	{ USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS },
 	{ USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET },
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
index f5a3819..fcd6ac0 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -125,6 +125,9 @@ static const struct usb_device_id usb_quirk_list[] = {
 	{ USB_DEVICE(0x04f3, 0x016f), .driver_info =
 			USB_QUIRK_DEVICE_QUALIFIER },
 
+	{ USB_DEVICE(0x04f3, 0x21b8), .driver_info =
+			USB_QUIRK_DEVICE_QUALIFIER },
+
 	/* Roland SC-8820 */
 	{ USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },
 
-- 
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2015-12-02  8:53 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-22  4:06 [PATCH] USB: quirks: Fix another ELAN touchscreen Adrien Vergé
2015-11-23 14:52 ` Jiri Kosina
2015-11-23 17:37   ` Adrien Vergé
2015-11-24  7:29     ` Oliver Neukum
2015-11-23 17:43 ` [PATCH v2] " Adrien Vergé
2015-11-24 13:49 ` [PATCH v3 0/2] Fixes for ELAN touchscreens Adrien Vergé
2015-11-24 13:49   ` [PATCH v3 1/2] USB: quirks: Fix another ELAN touchscreen Adrien Vergé
2015-11-24 13:49   ` [PATCH v3 2/2] USB: quirks: Apply ALWAYS_POLL to all ELAN devices Adrien Vergé
2015-11-24 14:11     ` Benjamin Tissoires
2015-11-24 14:34       ` Adrien Vergé
2015-11-24 15:02 ` [PATCH v4 0/2] Fixes for ELAN touchscreens Adrien Vergé
2015-11-24 15:02   ` [PATCH v4 1/2] USB: quirks: Fix another ELAN touchscreen Adrien Vergé
2015-11-24 15:02   ` [PATCH v4 2/2] USB: quirks: Apply ALWAYS_POLL to all ELAN devices Adrien Vergé
2015-11-24 16:11     ` Benjamin Tissoires
2015-11-24 16:41     ` kbuild test robot
2015-12-01 18:21     ` Greg Kroah-Hartman
2015-12-01 18:56 ` [PATCH v5 0/2] Fixes for ELAN touchscreens Adrien Vergé
2015-12-01 18:56   ` [PATCH v5 1/2] USB: quirks: Fix another ELAN touchscreen Adrien Vergé
2015-12-01 18:56   ` [PATCH v5 2/2] USB: quirks: Apply ALWAYS_POLL to all ELAN devices Adrien Vergé
     [not found]     ` <1448996208-19713-3-git-send-email-adrienverge-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-12-01 22:09       ` Jiri Kosina
2015-12-01 22:11         ` Greg Kroah-Hartman
2015-12-02  8:53           ` Adrien Vergé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).