From 5894dd675f4bd3ba296d262fae99b3b87a0f87fd Mon Sep 17 00:00:00 2001 From: root Date: Thu, 24 Nov 2011 23:14:53 +0000 Subject: Thu Nov 24 23:14:53 UTC 2011 --- ...dd-reset-resume-quirk-for-several-webcams.patch | 99 ++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 libre/linux-libre/usb-add-reset-resume-quirk-for-several-webcams.patch (limited to 'libre/linux-libre/usb-add-reset-resume-quirk-for-several-webcams.patch') diff --git a/libre/linux-libre/usb-add-reset-resume-quirk-for-several-webcams.patch b/libre/linux-libre/usb-add-reset-resume-quirk-for-several-webcams.patch new file mode 100644 index 000000000..9e570dd3f --- /dev/null +++ b/libre/linux-libre/usb-add-reset-resume-quirk-for-several-webcams.patch @@ -0,0 +1,99 @@ +commit 2394d67e446bf616a0885167d5f0d397bdacfdfc +Author: Oliver Neukum +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 + Signed-off-by: stable + Signed-off-by: Greg Kroah-Hartman + +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 +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 + Cc: stable + Signed-off-by: Greg Kroah-Hartman + +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 }, + -- cgit v1.2.3-54-g00ecf