Hi Guennadi, On Friday 01 April 2011 16:06:42 Guennadi Liakhovetski wrote: > This patch extends the videobuf2 framework with new helper functions and > modifies existing ones to support multi-size video-buffers. [snip] > diff --git a/include/media/videobuf2-core.h > b/include/media/videobuf2-core.h index f87472a..88076fc 100644 > --- a/include/media/videobuf2-core.h > +++ b/include/media/videobuf2-core.h > @@ -177,6 +177,10 @@ struct vb2_buffer { > * plane should be set in the sizes[] array and optional > * per-plane allocator specific context in alloc_ctxs[] > * array > + * @queue_add: like above, but called from VIDIOC_CREATE_BUFS, but if > + * there are already buffers on the queue, it won't replace > + * them, but add new ones, possibly with a different format > + * and plane sizes I don't think drivers will need to perform different operations in queue_setup and queue_add. You could merge the two operations. > * @wait_prepare: release any locks taken while calling vb2 functions; > * it is called before an ioctl needs to wait for a new > * buffer to arrive; required to avoid a deadlock in > @@ -194,6 +198,8 @@ struct vb2_buffer { > * each hardware operation in this callback; > * if an error is returned, the buffer will not be queued > * in driver; optional > + * @buf_submit: called primarily to invalidate buffer caches for faster > + * consequent queuing; optional What's the difference between buf_submit and buf_prepare ? > * @buf_finish: called before every dequeue of the buffer back to > * userspace; drivers may perform any operations required > * before userspace accesses the buffer; optional -- Regards, Laurent Pinchart -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html