On Wednesday 16 May 2007, Alan Stern wrote: > On Wed, 16 May 2007, Pete Zaitcev wrote: > > Right. Per-endpoint with a size limits also allows TDs to be > > preallocated. > > With a large potential waste of memory!
Which is the general down-side of preallocation... > UHCI is so inefficient that > the TDs use up almost as much memory as the data to be transferred > (within a factor of 2). Do we really want to keep those things around > when they're not being used? Not really ... considering most endpoints are idle most of the time. Also, remember that the number of TDs required for a buffer isn't strictly a function of buffer size, but also of alignment. EHCI, for one example, can handle up to 20 KB if the buffer is nicely aligned, but maybe only 16 KB otherwise. So if the size limit is 20 KB per URB (I've seen usb-storage regularly want 64 KB though, when memory isn't very fragmented), does that imply one TD or two? - Dave ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel