Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cf227429 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

[media] videobuf2-core.h: improve documentation



Document that drivers can access/modify the buffer contents in buf_prepare
and buf_finish. That was not clearly stated before.

Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Acked-by: default avatarPawel Osciak <pawel@osciak.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent ef33d901
Loading
Loading
Loading
Loading
+17 −15
Original line number Diff line number Diff line
@@ -270,22 +270,24 @@ struct vb2_buffer {
 *			queue setup from completing successfully; optional.
 * @buf_prepare:	called every time the buffer is queued from userspace
 *			and from the VIDIOC_PREPARE_BUF ioctl; drivers may
 *			perform any initialization required before each hardware
 *			operation in this callback; drivers that support
 *			VIDIOC_CREATE_BUFS must also validate the buffer size;
 *			if an error is returned, the buffer will not be queued
 *			in driver; optional.
 *			perform any initialization required before each
 *			hardware operation in this callback; drivers can
 *			access/modify the buffer here as it is still synced for
 *			the CPU; drivers that support VIDIOC_CREATE_BUFS must
 *			also validate the buffer size; if an error is returned,
 *			the buffer will not be queued in driver; optional.
 * @buf_finish:		called before every dequeue of the buffer back to
 *			userspace; drivers may perform any operations required
 *			before userspace accesses the buffer; optional. The
 *			buffer state can be one of the following: DONE and
 *			ERROR occur while streaming is in progress, and the
 *			PREPARED state occurs when the queue has been canceled
 *			and all pending buffers are being returned to their
 *			default DEQUEUED state. Typically you only have to do
 *			something if the state is VB2_BUF_STATE_DONE, since in
 *			all other cases the buffer contents will be ignored
 *			anyway.
 *			userspace; the buffer is synced for the CPU, so drivers
 *			can access/modify the buffer contents; drivers may
 *			perform any operations required before userspace
 *			accesses the buffer; optional. The buffer state can be
 *			one of the following: DONE and ERROR occur while
 *			streaming is in progress, and the PREPARED state occurs
 *			when the queue has been canceled and all pending
 *			buffers are being returned to their default DEQUEUED
 *			state. Typically you only have to do something if the
 *			state is VB2_BUF_STATE_DONE, since in all other cases
 *			the buffer contents will be ignored anyway.
 * @buf_cleanup:	called once before the buffer is freed; drivers may
 *			perform any additional cleanup; optional.
 * @start_streaming:	called once to enter 'streaming' state; the driver may