760c70102c
Using auto-generated links is dangerous, as there are multiple definitions for syscalls (at least one on each book part). So, reference them by their explicit reference. I used this small script to help writing this patch: for i in $(git grep -l "c:func:"); do perl -ne 's/\:c\:func:\`(open|close|read|poll|write|select|mmap|munmap|ioctl)\(\)`/:ref:`$1() <func-$1>`/; print $_' < $i >a && mv a $i; done Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
57 lines
1.1 KiB
ReStructuredText
57 lines
1.1 KiB
ReStructuredText
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
.. _func-munmap:
|
|
|
|
*************
|
|
V4L2 munmap()
|
|
*************
|
|
|
|
*man v4l2-munmap(2)*
|
|
|
|
Unmap device memory
|
|
|
|
|
|
Synopsis
|
|
========
|
|
|
|
.. code-block:: c
|
|
|
|
#include <unistd.h>
|
|
#include <sys/mman.h>
|
|
|
|
|
|
.. cpp:function:: int munmap( void *start, size_t length )
|
|
|
|
Arguments
|
|
=========
|
|
|
|
``start``
|
|
Address of the mapped buffer as returned by the
|
|
:ref:`mmap() <func-mmap>` function.
|
|
|
|
``length``
|
|
Length of the mapped buffer. This must be the same value as given to
|
|
:ref:`mmap() <func-mmap>` and returned by the driver in the struct
|
|
:ref:`v4l2_buffer <v4l2-buffer>` ``length`` field for the
|
|
single-planar API and in the struct
|
|
:ref:`v4l2_plane <v4l2-plane>` ``length`` field for the
|
|
multi-planar API.
|
|
|
|
|
|
Description
|
|
===========
|
|
|
|
Unmaps a previously with the :ref:`mmap() <func-mmap>` function mapped
|
|
buffer and frees it, if possible.
|
|
|
|
|
|
Return Value
|
|
============
|
|
|
|
On success :ref:`munmap() <func-munmap>` returns 0, on failure -1 and the
|
|
``errno`` variable is set appropriately:
|
|
|
|
EINVAL
|
|
The ``start`` or ``length`` is incorrect, or no buffers have been
|
|
mapped yet.
|