RFC : usbatm and iso
castet.matthieu at free.fr
Fri Feb 11 12:29:40 EST 2005
Roman Kagan wrote:
> Salut Matthieu,
> On Mon, Feb 07, 2005 at 04:36:58PM +0100, matthieu castet wrote:
>>I attached a patch for adding iso to the new library.
>>Seem to work well but need more testing.
> Just out of curiosity: does using of isochronous transfers improve
> throughput compared to bulk? I'd be rather surprised if it does...
Yes, with urb it don't work well for rate > 100 kbits, for iso rate it
may be it is caused by the modem...
> Re. your patch, I'm missing the point of having multiple iso urbs,
> especially since you use an interval of 1. Why not use iso frames
> within a single urb where the bulk version uses separate urbs?
From usb.h :
* Isochronous URBs have a different data transfer model, in part because
* the quality of service is only "best effort". Callers provide specially
* allocated URBs, with number_of_packets worth of iso_frame_desc
* at the end. Each such packet is an individual ISO transfer.
* URBs are normally queued, submitted by drivers to arrange that
* transfers are at least *double buffered*, and then explicitly
* in completion handlers, so
* that data (such as audio or video) streams at as constant a rate as the
* host controller scheduler can support.
Also it is ouble buffered iso urb are common :
$grep "double buffer" drivers/usb/media/*
> Or am I saying something totally stupid?
More information about the Usbatm