Re: EHCI USB 2.0 HUB TT scheduling issue with sound card

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 26 Oct 2011, Thomas Poussevin wrote:

> Le 26/10/2011 17:23, Alan Stern a �it :
> >> cat /dev/urandom  |  alsa_aplay -Dhw:2,0 -f S16_LE -c2&
> >> uframe 5 : usecs 164 unavailable (remains 9/0 on uframe 7)
> >> Note : On uframe 5 , the 164 usecs would be uframe 5 : 125, uframe 6 :
> >> 30, uframe 7 : 9,out of max
> >> uframe 4 : sheduled
> >>
> >>
> >> uframe                |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |
> >> ----------------------------------------------------------------------
> >> max_tt_usecs          | 125 | 125 | 125 | 125 | 125 | 125 | 30  |  0  |
> >> ----------------------------------------------------------------------
> >> used usecs on a frame |  13 |  0  |  0  |  0  | 125 | 78  |  0  |  0  |
> >> ----------------------------------------------------------------------
> >
> > This is a very bad idea.  ehci-hcd does not support isochronous-IN
> > CSPLIT transactions extending beyond a frame boundary.  In practice
> > this means that no isochronous-IN transaction should ever be scheduled
> > in uframe 4 or later.
> 
> I don't understant, this is the OUT transaction that has been scheduled 
> at uframe 4 & 5.
> We did not change restriction for IN transactions, that now find a place 
> in uframe 2 & 3 (that are free because OUT does not occupate uframe 1 & 
> 2 anymore) :

Ah, okay.  I didn't pay close attention to which transfer was IN and
which was OUT.  This is still only a band-aid solution, but it looks
like it will help solve a common problem.

As for the patch itself, there is a small error.  start, next, previous 
are all unsigned values; so when you do

	previous = start-1;

it won't work if start was 0.  You should do something more like this:

	next = start;
	start += period;
	while (start-- > next) {
		...

In addition, add a short comment explaining why this loop searches 
backwards.  And remember to run your patch through checkpatch.pl.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux