On Wed, May 01, 2002, David Brownell <[EMAIL PROTECTED]> wrote:
> > > I have a question about the handling of interrupt URBs: once
> > > an interrupt URB has been submitted (usb_submit_urb()), does it have
> > > to be resubmitted by the completion routine, or does the USB system
> > > automatically re-queue the URB once the completion routine returns ?
> > > In the latter case which fields in the URB would need to be set up
> > > again ?
> > 
> > Depends on if you set the interval or not. An interval of 0 is what is
> > called one shot and it'll be finished when the transfer has completed.
> 
> However, that's a UHCI-specific feature.  Avoid it for
> drivers that you expect to work on other HCs.

OHCI and EHCI are buggy then I guess. This is a feature that is actually
useful and should be implemented.

> > If you set the interval to anything other than 0, then it will
> > automatically resubmit for you. This is how interrupt URB's are
> > typically used.
> 
> Although there are rumblings that the automagic logic should
> maybe disappear (in 2.5) in favor of a straight queuing mechanism,
> with explicit resubmit ... fewer special cases in the driver model.
> 
> The current automagic resubmission schemes (ISO does it too)
> can mask errors, and don't handle some interesting interrupt cases
> that are important for writes (OUT to device) or for avoiding a need
> to have "USB target drivers" (for Linux embedded in USB devices)
> use an excessively different kind of URB API.

Yes, I was describing 2.4 behaviour.

JE


_______________________________________________________________

Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to