Re: Question about new TT scheduler

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

 



On Tue, 20 May 2009, Alan Stern wrote:

>> I discover that new TT scheduler don't allow transfers longer than 780uS
>> (see max_tt_usecs[] in ehci-sched.c) or approx. 1000 bytes as
calculated in
>> iso_stream_init() for full speed isoc transfer. But, as I can understand
>> from usb 2.0 documentation, limit for full speed isoc transfer is 1023
>> bytes as of table 5-4 sec 5.6.3. and it take approx. 806 uS
>
> That time includes bit-stuffing.  Without bit-stuffing the value would
> be 692 us or so.

Thanks, I miss this.

>> Can somebody explain scheduler limitation of 780 uS? Is it 78% of 1000
>> uS (8 microframes) or 89% of 875 uS (8 microframes minus SOF)?
>
> I'm not certain (since I didn't write the code), but I think 780 is a
> bad estimate of: 1000 us * 90% * (6/7).  The (6/7) factor was put in to
> account for bit-stuffing, by mistake.  If you do the calculation, the
> actual value would be 771, not 780, so maybe this guess is wrong.

If I understand you correctly, we should change calculation of
stream->tt_usecs in iso_stream_init() to not include bit-stuffing, or take
it(bit-stuffing) into account in the scheduler itself, right?

>> Why old scheduler allow 1023 bytes full speed isoc transfer but new one
>> forbid this??
>
> Because the new scheduler has bugs.  You found one of them.

Usually, the software has bugs ;-) Can you assist to repair this bug?

-- 
Regards,
   Leonid


--
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