On Friday 07 January 2005 4:23 am, Torsten Landschoff wrote:
> Hi Oliver, 
> 
> On Fri, Jan 07, 2005 at 12:37:26PM +0100, Oliver Brandt wrote:
> 
> [USB Audio problems over USB 2.0 hub]
> 
> > I've read that iso transfer and transaction translation have something
> > to do with it and that transaction translation is not fully implemented
> > yet (I'm using kernel 2.6.10). Are there any patches available I should
> > use?
> 
> Actually the problem AFAIU is that the audio device is managed by a
> transaction translator in the hub. Therefore isochronous data transfer
> at full speed gets more complicated. 

That bug's been there for a while, but not many folk have reported it.

However, a couple weeks back Craig Nadler <[EMAIL PROTECTED]> turned
up what could be the root cause:

>>>      the scanning loop for the periodic list
>>> misses completed SITDs due to a race condition. The missed SITDs have not
>>> been marked as completed at the time they were scanned then the frame
>>> counter advanced before the scanning loop was finished. In this case the
>>> scanning loop will not rescan TDs in that frame and the EHCI driver will
>>> hang waiting for the TD to be removed by the scanning loop. There are two
>>> fixes that I've looked at. The first one stops the next_frame field in the
>>> ehci structure from being incremented passed a frame with an uncompleted TD.
>>> The second fix would stop the next_frame field from being incremented passed
>>> the frame that's current at the beginning of the scanning loop.

Which could be what's causing this; when I saw similar problems they
were (a) intermittent == race-like, (b) never on the very regular stress
loads I used to test that those split ISO transfers, and (c) only on ISO
transfers which were split up over several microframes.  (When going through
a transaction translator, an ISO-OUT transfer gets split up into 188 byte
fragments, one per microframe.  So transfers of 189 bytes or more would
be affected.)

That second approach to a fix sounds straightforward.  Anyone feel like
trying to provide a patch?

- Dave


-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
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