On Tue, 9 Nov 2004, Jan Hegner wrote:

> > The driver may be trying to transfer too much data in a single URB, or 
> > trying to queue too many URBs at once.  But it seems odd that you get a 
> > stall even when trying to receive a single frame.  Shouldn't that take 
> > less than 50 ms?  So increasing FSBR_DELAY from 50 to 1000 shouldn't make 
> > any difference.
> 
> One frame has about 300k. We tried 32k, 64k and 300k per urb. We queue 3
> frames. That means there is a maximum of 30 urbs in the queue. Is that too
> much?

It's easier to think in terms of time rather than data size.  10 ms
corresponds to approximately 10 KB so 50 ms is about 50 KB, maybe less.  
If you try to queue more than that much at any time (i.e., more than
FSBR_DELAY) you run the risk that FSBR will be turned off.  3 frames will 
take close to 1 second; no wonder you had to raise FSBR_DELAY to 1000!

Not to mention the difficulty of allocating large amounts of contiguous 
kernel memory.  I would stick to <= 16 KB per URB, and don't queue more 
than 40 ms worth of URBs at once.  Or you can simply increase FSBR_DELAY 
and not worry about it.

Alan Stern



-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to