]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 10 Nov 2014 04:50:24 +0000 (13:50 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 10 Nov 2014 04:50:24 +0000 (13:50 +0900)
added patches:
usb-core-add-device-qualifier-quirk.patch
usb-quirks-enable-device-qualifier-quirk-for-another-elan-touchscreen.patch
usb-quirks-enable-device-qualifier-quirk-for-elan-touchscreen.patch
usb-quirks-enable-device-qualifier-quirk-for-yet-another-elan-touchscreen.patch

queue-3.14/series
queue-3.14/usb-core-add-device-qualifier-quirk.patch [new file with mode: 0644]
queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-another-elan-touchscreen.patch [new file with mode: 0644]
queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-elan-touchscreen.patch [new file with mode: 0644]
queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-yet-another-elan-touchscreen.patch [new file with mode: 0644]

index 44c2eedaa6d7d648fe3486c5555dc4dae833cf6e..14e521d739ffa6030f1f407b442555079ea16912 100644 (file)
@@ -147,3 +147,7 @@ spi-fsl-dspi-fix-ctar-selection.patch
 spi-pxa2xx-toggle-clocks-on-suspend-if-not-disabled-by-runtime-pm.patch
 usb-musb-cppi41-restart-hrtimer-only-if-not-yet-done.patch
 usb-musb-dsps-start-otg-timer-on-resume-again.patch
+usb-core-add-device-qualifier-quirk.patch
+usb-quirks-enable-device-qualifier-quirk-for-elan-touchscreen.patch
+usb-quirks-enable-device-qualifier-quirk-for-another-elan-touchscreen.patch
+usb-quirks-enable-device-qualifier-quirk-for-yet-another-elan-touchscreen.patch
diff --git a/queue-3.14/usb-core-add-device-qualifier-quirk.patch b/queue-3.14/usb-core-add-device-qualifier-quirk.patch
new file mode 100644 (file)
index 0000000..cf30c85
--- /dev/null
@@ -0,0 +1,50 @@
+From 2a159389bf5d962359349a76827b2f683276a1c7 Mon Sep 17 00:00:00 2001
+From: Johan Hovold <johan@kernel.org>
+Date: Mon, 25 Aug 2014 17:51:26 +0200
+Subject: USB: core: add device-qualifier quirk
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Johan Hovold <johan@kernel.org>
+
+commit 2a159389bf5d962359349a76827b2f683276a1c7 upstream.
+
+Add new quirk for devices that cannot handle requests for the
+device_qualifier descriptor.
+
+A USB-2.0 compliant device must respond to requests for the
+device_qualifier descriptor (even if it's with a request error), but at
+least one device is known to misbehave after such a request.
+
+Suggested-by: Bjørn Mork <bjorn@mork.no>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/core/hub.c     |    3 +++
+ include/linux/usb/quirks.h |    3 +++
+ 2 files changed, 6 insertions(+)
+
+--- a/drivers/usb/core/hub.c
++++ b/drivers/usb/core/hub.c
+@@ -4378,6 +4378,9 @@ check_highspeed (struct usb_hub *hub, st
+       struct usb_qualifier_descriptor *qual;
+       int                             status;
++      if (udev->quirks & USB_QUIRK_DEVICE_QUALIFIER)
++              return;
++
+       qual = kmalloc (sizeof *qual, GFP_KERNEL);
+       if (qual == NULL)
+               return;
+--- a/include/linux/usb/quirks.h
++++ b/include/linux/usb/quirks.h
+@@ -33,4 +33,7 @@
+ /* device generates spurious wakeup, ignore remote wakeup capability */
+ #define USB_QUIRK_IGNORE_REMOTE_WAKEUP        0x00000200
++/* device can't handle device_qualifier descriptor requests */
++#define USB_QUIRK_DEVICE_QUALIFIER    0x00000100
++
+ #endif /* __LINUX_USB_QUIRKS_H */
diff --git a/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-another-elan-touchscreen.patch b/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-another-elan-touchscreen.patch
new file mode 100644 (file)
index 0000000..3adf9cb
--- /dev/null
@@ -0,0 +1,32 @@
+From 876af5d454548be40327ba9efea4bc92a8575019 Mon Sep 17 00:00:00 2001
+From: Adel Gadllah <adel.gadllah@gmail.com>
+Date: Thu, 9 Oct 2014 09:29:29 +0200
+Subject: USB: quirks: enable device-qualifier quirk for another Elan touchscreen
+
+From: Adel Gadllah <adel.gadllah@gmail.com>
+
+commit 876af5d454548be40327ba9efea4bc92a8575019 upstream.
+
+Currently this quirk is enabled for the model with the device id 0x0089, it
+is needed for the 0x009b model, which is found on the Fujitsu Lifebook u904
+as well.
+
+Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/core/quirks.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -97,6 +97,9 @@ static const struct usb_device_id usb_qu
+       { USB_DEVICE(0x04f3, 0x0089), .driver_info =
+                       USB_QUIRK_DEVICE_QUALIFIER },
++      { USB_DEVICE(0x04f3, 0x009b), .driver_info =
++                      USB_QUIRK_DEVICE_QUALIFIER },
++
+       /* Roland SC-8820 */
+       { USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },
diff --git a/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-elan-touchscreen.patch b/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-elan-touchscreen.patch
new file mode 100644 (file)
index 0000000..e0b138a
--- /dev/null
@@ -0,0 +1,47 @@
+From c68929f75dfcb6354918862b91b5778585de1fa5 Mon Sep 17 00:00:00 2001
+From: Johan Hovold <johan@kernel.org>
+Date: Mon, 25 Aug 2014 17:51:27 +0200
+Subject: USB: quirks: enable device-qualifier quirk for Elan Touchscreen
+
+From: Johan Hovold <johan@kernel.org>
+
+commit c68929f75dfcb6354918862b91b5778585de1fa5 upstream.
+
+Enable device-qualifier quirk for Elan Touchscreen, which often fails to
+handle requests for the device_descriptor.
+
+Note that the device sometimes do respond properly with a Request Error
+(three times as USB core retries), but usually fails to respond at all.
+When this happens any further descriptor requests also fails, for
+example:
+
+[ 1528.688934] usb 2-7: new full-speed USB device number 4 using xhci_hcd
+[ 1530.945588] usb 2-7: unable to read config index 0 descriptor/start: -71
+[ 1530.945592] usb 2-7: can't read configurations, error -71
+
+This has been observed repeating for over a minute before eventual
+successful enumeration.
+
+Reported-by: Drew Von Spreecken <drewvs@gmail.com>
+Reported-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/core/quirks.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -93,6 +93,10 @@ static const struct usb_device_id usb_qu
+       { USB_DEVICE(0x04e8, 0x6601), .driver_info =
+                       USB_QUIRK_CONFIG_INTF_STRINGS },
++      /* Elan Touchscreen */
++      { USB_DEVICE(0x04f3, 0x0089), .driver_info =
++                      USB_QUIRK_DEVICE_QUALIFIER },
++
+       /* Roland SC-8820 */
+       { USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },
diff --git a/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-yet-another-elan-touchscreen.patch b/queue-3.14/usb-quirks-enable-device-qualifier-quirk-for-yet-another-elan-touchscreen.patch
new file mode 100644 (file)
index 0000000..2fd7341
--- /dev/null
@@ -0,0 +1,31 @@
+From d749947561af5996ccc076b2ffcc5f48b1be5d74 Mon Sep 17 00:00:00 2001
+From: Adel Gadllah <adel.gadllah@gmail.com>
+Date: Thu, 9 Oct 2014 09:29:30 +0200
+Subject: USB: quirks: enable device-qualifier quirk for yet another Elan touchscreen
+
+From: Adel Gadllah <adel.gadllah@gmail.com>
+
+commit d749947561af5996ccc076b2ffcc5f48b1be5d74 upstream.
+
+Yet another device affected by this.
+
+Tested-by: Kevin Fenzi <kevin@scrye.com>
+Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/core/quirks.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -100,6 +100,9 @@ static const struct usb_device_id usb_qu
+       { USB_DEVICE(0x04f3, 0x009b), .driver_info =
+                       USB_QUIRK_DEVICE_QUALIFIER },
++      { USB_DEVICE(0x04f3, 0x016f), .driver_info =
++                      USB_QUIRK_DEVICE_QUALIFIER },
++
+       /* Roland SC-8820 */
+       { USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },