On Mon, 2 Oct 2006, Laurent Pinchart wrote:

> > > > > It
> > > > > seems the bug is never triggered when using Microsoft Windows, so I
> > > > > suspect that Linux uses a faster scheduler. Is there a way to hack
> > > > > the USB scheduler to make it split control transfers across USB
> > > > > frames ? We would like to test if the hardware bug would then be
> > > > > still triggered.
> > > >
> > > > Which host controller driver are you using?  uhci-hcd always splits
> > > > control transfers like this (each transaction in a different frame) for
> > > > unconfigured devices.  If you want to hack uhci-hcd so that it splits
> > > > up control transfers all the time, I can send you a patch.  As far as I
> > > > know, it's impossible to make OHCI hardware do the same thing.
> > >
> > > I'm using an EHCI controller. Does it matter if the USB 1.1 controller is
> > > an OHCI or UHCI ?
> >
> > Is the Logitech webcam a full-speed device or does it use high-speed?  If
> > it is full-speed, is it behind a high-speed hub?  These things will affect
> > which controller gets used.  If it is behind a high-speed hub, does it
> > work better when you connect it directly to the computer?
> 
> The webcam is a high-speed device connected to the root hub.

I see.  In that case the companion full-speed controller won't make any 
difference, since it's not being used.

> > For most purposes it doesn't matter whether a full-speed controller is
> > OHCI or UHCI.  OHCI does more of the work in hardware, so it puts less
> > load on the host computer.  By the same token, its scheduling is less
> > flexible since the host has less direct control.
> >
> > > It would be nice if you could send me the patch.
> >
> > See below.

Note that it won't have any effect since you're not using a UHCI 
controller for the webcam.

> > How did you determine the source of the problem?  Did the engineers at
> > Logitech figure it out for you?  If so, have they made a similar analysis
> > of what happens with Windows to see why it works better?
> 
> They are working on it, but they don't have lots of traces yet. I'll ask them 
> to send more information on this mailing list directly, this should be 
> easier. The problem is definitely in the webcam hardware (they are working on 
> a firmware workaround), but the weird part is it is not triggered by Windows.

Very curious.

In principle it's possible to change ehci-hcd so that the SETUP
transaction of a control transfer is sent in a different microframe from
the following IN/OUT transactions.  In practice it might be a painfully
difficult change to write.

Alan Stern


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to