On Mon, May 21, 2001, David Brownell <[EMAIL PROTECTED]> wrote:
> Hi Johannes,
>
> > > > What's the difference between queuing URBs with the USB_QUEUE_BULK flag or
> > > > with the next pointer?
> > >
> > > I think QUEUE_BULK is the only way to queue bulk URBs,
> > > and the "next" pointer is only for scheduling rings of ISO urbs.
> >
> > "only" is incorrect. It can be used for any URB's.
>
> Which "only"? That's the way OHCI behaves...
Incorrectly IMHO.
> > The difference is performance. QUEUE_BULK on UHCI will setup the
> > schedule to execute the next URB in the same frame. ->next requires a
> > frame to pass.
>
> That would seem to be an HCD-specific behavior. I couldn't quite
> see how urb->next actually got used in "uhci.c"; it's tested, but not used.
Oops, that code get hacked out by accident when I sent the patches to
Linus. I'll fix that.
> In usb-uhci.c I see a uhci_submit_urb(next_urb) though ... is it possible
> that the different HCDs handle iso rings differently?
They shouldn't.
> > Strictly performance.
> >
> > Also, QUEUE_BULK is bulk only right now.
>
> With a name like QUEUE_BULK, I'd call it a bug if it applied to any
> other transfer type ... so, that "only" would correct.
No, you can queue bulk urb's with ->next as well.
JE
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel