summaryrefslogtreecommitdiff
path: root/libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch')
-rw-r--r--libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch99
1 files changed, 99 insertions, 0 deletions
diff --git a/libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch b/libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch
new file mode 100644
index 000000000..9e570dd3f
--- /dev/null
+++ b/libre/linux-libre-aufs_friendly/usb-add-reset-resume-quirk-for-several-webcams.patch
@@ -0,0 +1,99 @@
+commit 2394d67e446bf616a0885167d5f0d397bdacfdfc
+Author: Oliver Neukum <oneukum@suse.de>
+Date: Tue Sep 13 08:42:21 2011 +0200
+
+ USB: add RESET_RESUME for webcams shown to be quirky
+
+ The new runtime PM code has shown that many webcams suffer
+ from a race condition that may crash them upon resume.
+ Runtime PM is especially prone to show the problem because
+ it retains power to the cameras at all times. However
+ system suspension may also crash the devices and retain
+ power to the devices.
+ The only way to solve this problem without races is in
+ usbcore with the RESET_RESUME quirk.
+
+ Signed-off-by: Oliver Neukum <oneukum@suse.de>
+ Signed-off-by: stable <stable@kernel.org>
+ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index 81ce6a8..38f0510 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -38,6 +38,24 @@ static const struct usb_device_id usb_quirk_list[] = {
+ /* Creative SB Audigy 2 NX */
+ { USB_DEVICE(0x041e, 0x3020), .driver_info = USB_QUIRK_RESET_RESUME },
+
++ /* Logitech Webcam C200 */
++ { USB_DEVICE(0x046d, 0x0802), .driver_info = USB_QUIRK_RESET_RESUME },
++
++ /* Logitech Webcam C250 */
++ { USB_DEVICE(0x046d, 0x0804), .driver_info = USB_QUIRK_RESET_RESUME },
++
++ /* Logitech Webcam B/C500 */
++ { USB_DEVICE(0x046d, 0x0807), .driver_info = USB_QUIRK_RESET_RESUME },
++
++ /* Logitech Webcam Pro 9000 */
++ { USB_DEVICE(0x046d, 0x0809), .driver_info = USB_QUIRK_RESET_RESUME },
++
++ /* Logitech Webcam C310 */
++ { USB_DEVICE(0x046d, 0x081b), .driver_info = USB_QUIRK_RESET_RESUME },
++
++ /* Logitech Webcam C270 */
++ { USB_DEVICE(0x046d, 0x0825), .driver_info = USB_QUIRK_RESET_RESUME },
++
+ /* Logitech Harmony 700-series */
+ { USB_DEVICE(0x046d, 0xc122), .driver_info = USB_QUIRK_DELAY_INIT },
+
+@@ -69,6 +87,9 @@ static const struct usb_device_id usb_quirk_list[] = {
+ { USB_DEVICE(0x06a3, 0x0006), .driver_info =
+ USB_QUIRK_CONFIG_INTF_STRINGS },
+
++ /* Guillemot Webcam Hercules Dualpix Exchange*/
++ { USB_DEVICE(0x06f8, 0x0804), .driver_info = USB_QUIRK_RESET_RESUME },
++
+ /* M-Systems Flash Disk Pioneers */
+ { USB_DEVICE(0x08ec, 0x1000), .driver_info = USB_QUIRK_RESET_RESUME },
+
+commit 5b253d88cc6c65a23cefc457a5a4ef139913c5fc
+Author: Jon Levell <linuxusb@coralbark.net>
+Date: Thu Sep 29 20:42:52 2011 +0100
+
+ USB: add quirk for Logitech C300 web cam
+
+ My webcam is a Logitech C300 and I get "chipmunk"ed squeaky sound.
+ The following trivial patch fixes it.
+
+ Signed-off-by: Jon Levell <linuxusb@coralbark.net>
+ Cc: stable <stable@kernel.org>
+ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index 38f0510..d6a8d82 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -44,6 +44,9 @@ static const struct usb_device_id usb_quirk_list[] = {
+ /* Logitech Webcam C250 */
+ { USB_DEVICE(0x046d, 0x0804), .driver_info = USB_QUIRK_RESET_RESUME },
+
++ /* Logitech Webcam C300 */
++ { USB_DEVICE(0x046d, 0x0805), .driver_info = USB_QUIRK_RESET_RESUME },
++
+ /* Logitech Webcam B/C500 */
+ { USB_DEVICE(0x046d, 0x0807), .driver_info = USB_QUIRK_RESET_RESUME },
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index d6a8d82..caa1991 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -50,6 +50,9 @@ static const struct usb_device_id usb_quirk_list[] = {
+ /* Logitech Webcam B/C500 */
+ { USB_DEVICE(0x046d, 0x0807), .driver_info = USB_QUIRK_RESET_RESUME },
+
++ /* Logitech Webcam C600 */
++ { USB_DEVICE(0x046d, 0x0808), .driver_info = USB_QUIRK_RESET_RESUME },
++
+ /* Logitech Webcam Pro 9000 */
+ { USB_DEVICE(0x046d, 0x0809), .driver_info = USB_QUIRK_RESET_RESUME },
+