ioctl VIDIOC_PREPARE_BUF
&manvol;
VIDIOC_PREPARE_BUFPrepare a buffer for I/Oint ioctlint fdint requeststruct v4l2_buffer *argpArgumentsfd&fd;requestVIDIOC_PREPARE_BUFargpDescriptionExperimentalThis is an experimental
interface and may change in the future.Applications can optionally call the
VIDIOC_PREPARE_BUF ioctl to pass ownership of the buffer
to the driver before actually enqueuing it, using the
VIDIOC_QBUF ioctl, and to prepare it for future I/O.
Such preparations may include cache invalidation or cleaning. Performing them
in advance saves time during the actual I/O. In case such cache operations are
not required, the application can use one of
V4L2_BUF_FLAG_NO_CACHE_INVALIDATE and
V4L2_BUF_FLAG_NO_CACHE_CLEAN flags to skip the respective
step.The v4l2_buffer structure is
specified in .
&return-value;
EBUSYFile I/O is in progress.EINVALThe buffer type is not
supported, or the index is out of bounds,
or no buffers have been allocated yet, or the
userptr or
length are invalid.