* [PATCH 2/2] usb: Make DELAY_INIT quirk wait 100ms between Get Configuration requests
@ 2014-03-04 18:53 Julius Werner
2014-03-04 19:05 ` Greg Kroah-Hartman
0 siblings, 1 reply; 3+ messages in thread
From: Julius Werner @ 2014-03-04 18:53 UTC (permalink / raw)
To: Greg Kroah-Hartman
Cc: Oliver Neukum, Luigi Semenzato, linux-kernel, linux-usb, Julius Werner
The DELAY_INIT quirk only reduces the frequency of enumeration failures
with the Logitech HD Pro C920 and C930e webcams, but does not quite
eliminate them. We have found that adding a delay of 100ms between the
first and second Get Configuration request makes the device enumerate
perfectly reliable even after several weeks of extensive testing. The
reasons for that are anyone's guess, but since the DELAY_INIT quirk
already delays enumeration by a whole second, wating for another 10th of
that isn't really a big deal for the one other device that uses it, and
it will resolve the problems with these webcams.
Change-Id: Ibf738426307fe8ef362768db2decc9bc2b30a930
Signed-off-by: Julius Werner <jwerner@chromium.org>
---
drivers/usb/core/config.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c
index 8d72f0c..062967c 100644
--- a/drivers/usb/core/config.c
+++ b/drivers/usb/core/config.c
@@ -717,6 +717,10 @@ int usb_get_configuration(struct usb_device *dev)
result = -ENOMEM;
goto err;
}
+
+ if (dev->quirks & USB_QUIRK_DELAY_INIT)
+ msleep(100);
+
result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno,
bigbuffer, length);
if (result < 0) {
--
1.8.3.2
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH 2/2] usb: Make DELAY_INIT quirk wait 100ms between Get Configuration requests
2014-03-04 18:53 [PATCH 2/2] usb: Make DELAY_INIT quirk wait 100ms between Get Configuration requests Julius Werner
@ 2014-03-04 19:05 ` Greg Kroah-Hartman
2014-03-04 19:26 ` Julius Werner
0 siblings, 1 reply; 3+ messages in thread
From: Greg Kroah-Hartman @ 2014-03-04 19:05 UTC (permalink / raw)
To: Julius Werner; +Cc: Oliver Neukum, Luigi Semenzato, linux-kernel, linux-usb
On Tue, Mar 04, 2014 at 10:53:06AM -0800, Julius Werner wrote:
> The DELAY_INIT quirk only reduces the frequency of enumeration failures
> with the Logitech HD Pro C920 and C930e webcams, but does not quite
> eliminate them. We have found that adding a delay of 100ms between the
> first and second Get Configuration request makes the device enumerate
> perfectly reliable even after several weeks of extensive testing. The
> reasons for that are anyone's guess, but since the DELAY_INIT quirk
> already delays enumeration by a whole second, wating for another 10th of
> that isn't really a big deal for the one other device that uses it, and
> it will resolve the problems with these webcams.
>
> Change-Id: Ibf738426307fe8ef362768db2decc9bc2b30a930
What am I supposed to do with this line? :)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-03-04 19:26 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-04 18:53 [PATCH 2/2] usb: Make DELAY_INIT quirk wait 100ms between Get Configuration requests Julius Werner
2014-03-04 19:05 ` Greg Kroah-Hartman
2014-03-04 19:26 ` Julius Werner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®