7.45. ioctl VIDIOC_PREPARE_BUF¶
7.45.1. Name¶
VIDIOC_PREPARE_BUF - Prepare a buffer for I/O
7.45.2. Synopsis¶
-
VIDIOC_PREPARE_BUF¶
int ioctl(int fd, VIDIOC_PREPARE_BUF, struct v4l2_buffer *argp)
7.45.3. Arguments¶
fd
File descriptor returned by
open()
.argp
Pointer to struct
v4l2_buffer
.
7.45.4. Description¶
Applications can optionally call the ioctl 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.
The struct v4l2_buffer
structure is specified in
Buffers.
7.45.5. Return Value¶
On success 0 is returned, on error -1 and the errno
variable is set
appropriately. The generic error codes are described at the
Generic Error Codes chapter.
- EBUSY
File I/O is in progress.
- EINVAL
The buffer
type
is not supported, or theindex
is out of bounds, or no buffers have been allocated yet, or theuserptr
orlength
are invalid.