On Wed, 3 Jul 2013, Laurent Pinchart wrote:

> > Of course, it has been true all along that the status fields in the URB's
> > individual usb_iso_packet_descriptor structures indicate any errors.  But
> > HCDs tend to set urb->status to 0 always, for isochronous URBs.  Is there
> > any advantage to setting urb->status to -EXDEV, given that we already set
> > urb->iso_frame_desc[i].status to -EXDEV for each i?
> 
> Not that I see, for the uvcvideo driver at least.

And probably not for anybody else either.

> > With (2) or (3), the driver could also recover right away by setting
> > the URB_ISO_ASAP flag on its next URB, but then synchronization would
> > be lost.  You wouldn't want to do this if synchronization matters.
> > But if it doesn't, the driver could simply set URB_ISO_ASAP on every
> > URB to avoid worrying about the problem -- the flag would have no
> > effect in the absence of underruns.
> 
> That's what the uvcvideo driver does. This could be changed, but I don't have 
> time to investigate at the moment. (Tested) patches are of course welcome :-)

Based on your earlier comments, it sounds like always using 
URB_ISO_ASAP will do just what uvcvideo wants.

Thanks for your feedback,

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to