brintos

brintos / linux-shallow public Read only

0
0
Text · 1.3 KiB · 45bb1ea Raw
57 lines · plain
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later2.. c:namespace:: V4L3 4.. _VIDIOC_PREPARE_BUF:5 6************************7ioctl VIDIOC_PREPARE_BUF8************************9 10Name11====12 13VIDIOC_PREPARE_BUF - Prepare a buffer for I/O14 15Synopsis16========17 18.. c:macro:: VIDIOC_PREPARE_BUF19 20``int ioctl(int fd, VIDIOC_PREPARE_BUF, struct v4l2_buffer *argp)``21 22Arguments23=========24 25``fd``26    File descriptor returned by :c:func:`open()`.27 28``argp``29    Pointer to struct :c:type:`v4l2_buffer`.30 31Description32===========33 34Applications can optionally call the :ref:`VIDIOC_PREPARE_BUF` ioctl to35pass ownership of the buffer to the driver before actually enqueuing it,36using the :ref:`VIDIOC_QBUF <VIDIOC_QBUF>` ioctl, and to prepare it for future I/O. Such37preparations may include cache invalidation or cleaning. Performing them38in advance saves time during the actual I/O.39 40The struct :c:type:`v4l2_buffer` structure is specified in41:ref:`buffer`.42 43Return Value44============45 46On success 0 is returned, on error -1 and the ``errno`` variable is set47appropriately. The generic error codes are described at the48:ref:`Generic Error Codes <gen-errors>` chapter.49 50EBUSY51    File I/O is in progress.52 53EINVAL54    The buffer ``type`` is not supported, or the ``index`` is out of55    bounds, or no buffers have been allocated yet, or the ``userptr`` or56    ``length`` are invalid.57