Hi, On Tuesday 05 May 2009 18:46:04 Karicheri, Muralidharan wrote: > Laurent, > > See my response below. I think we are closing in on most of the comments.
Good news :-) [snip] > > > Can I assume, after STREAMOFF, to successfully start streaming again, > > > application needs to call a) > > > REQBUF ->(optional QUERYBUF -> optional mmap) -> QBUF -> STREAMON ? > > > or > > > QBUF -> STREAMON > > > ? > > > > I don't think you can. STREAMOFF -> STREAMON seems valid. > > [MK]. The way we have implemented the driver is on the assumption that > application always call QBUF to enqueue buffer before calling STREAMON. > That is why I had the question if STREAMOFF->STREAMON is a valid scenario. > I have referred the capture example in v4l2 spec (rev 0.24) and I see > start_capturing() always call QBUF and then call STREAMON. So at this time, > I would like to keep this limitation and re-visit it later. I will add a > comment in the code. From the V4L2 specification: "The VIDIOC_STREAMOFF ioctl, apart of aborting or finishing any DMA in progress, unlocks any user pointer buffers locked in physical memory, and it removes all buffers from the incoming and outgoing queues." This means a QBUF will be needed at some point after STREAMOFF if the user wants to STREAMON, otherwise no frame will be captured. The QBUF can, however, be performed after STREAMON. In practice most applications will QBUF before STREAMON. You can fix the QBUF- after-STREAMON case later (please add a comment to the code) but you should already make sure the driver will not crash if QBUF hasn't been called before STREAMON. As a general rule, non-implemented functions will not prevent your driver from going upstream, but crashes will likely be show-stoppers. Please mark non-implemented functions with a TODO comment in the code so that people can start hacking once the driver is committed. [snip] Best regards, Laurent Pinchart _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
