summaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorDmitry Fleytman <dmitry@daynix.com>2017-09-05 11:40:56 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-10-12 11:51:17 +0200
commit43feb29db4c5233fd77eedd57b4f2a53c9db9eff (patch)
tree20dee3a875f78a4b4b1e4ba2951fda57605bc2ef /drivers/usb
parent767f7a2cf33a135fe3f57010b51c3f6e92d7677d (diff)
downloadlinux-stable-43feb29db4c5233fd77eedd57b4f2a53c9db9eff.tar.gz
linux-stable-43feb29db4c5233fd77eedd57b4f2a53c9db9eff.tar.bz2
linux-stable-43feb29db4c5233fd77eedd57b4f2a53c9db9eff.zip
usb: Increase quirk delay for USB devices
commit b2a542bbb3081dbd64acc8929c140d196664c406 upstream. Commit e0429362ab15 ("usb: Add device quirk for Logitech HD Pro Webcams C920 and C930e") introduced quirk to workaround an issue with some Logitech webcams. The workaround is introducing delay for some USB operations. According to our testing, delay introduced by original commit is not long enough and in rare cases we still see issues described by the aforementioned commit. This patch increases delays introduced by original commit. Having this patch applied we do not see those problems anymore. Signed-off-by: Dmitry Fleytman <dmitry@daynix.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/core/config.c2
-rw-r--r--drivers/usb/core/hub.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c
index eef716bdc259..5dc08c71c5b2 100644
--- a/drivers/usb/core/config.c
+++ b/drivers/usb/core/config.c
@@ -847,7 +847,7 @@ int usb_get_configuration(struct usb_device *dev)
}
if (dev->quirks & USB_QUIRK_DELAY_INIT)
- msleep(100);
+ msleep(200);
result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno,
bigbuffer, length);
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 80d4ef31ba8d..8127f112958e 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -4828,7 +4828,7 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
goto loop;
if (udev->quirks & USB_QUIRK_DELAY_INIT)
- msleep(1000);
+ msleep(2000);
/* consecutive bus-powered hubs aren't reliable; they can
* violate the voltage drop budget. if the new child has