162306a36Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
262306a36Sopenharmony_ci.. c:namespace:: V4L
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci.. _func-munmap:
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci*************
762306a36Sopenharmony_ciV4L2 munmap()
862306a36Sopenharmony_ci*************
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ciName
1162306a36Sopenharmony_ci====
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_civ4l2-munmap - Unmap device memory
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciSynopsis
1662306a36Sopenharmony_ci========
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci.. code-block:: c
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci    #include <unistd.h>
2162306a36Sopenharmony_ci    #include <sys/mman.h>
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci.. c:function:: int munmap( void *start, size_t length )
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciArguments
2662306a36Sopenharmony_ci=========
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci``start``
2962306a36Sopenharmony_ci    Address of the mapped buffer as returned by the
3062306a36Sopenharmony_ci    :c:func:`mmap()` function.
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci``length``
3362306a36Sopenharmony_ci    Length of the mapped buffer. This must be the same value as given to
3462306a36Sopenharmony_ci    :c:func:`mmap()` and returned by the driver in the struct
3562306a36Sopenharmony_ci    :c:type:`v4l2_buffer` ``length`` field for the
3662306a36Sopenharmony_ci    single-planar API and in the struct
3762306a36Sopenharmony_ci    :c:type:`v4l2_plane` ``length`` field for the
3862306a36Sopenharmony_ci    multi-planar API.
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ciDescription
4162306a36Sopenharmony_ci===========
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ciUnmaps a previously with the :c:func:`mmap()` function mapped
4462306a36Sopenharmony_cibuffer and frees it, if possible.
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ciReturn Value
4762306a36Sopenharmony_ci============
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ciOn success :c:func:`munmap()` returns 0, on failure -1 and the
5062306a36Sopenharmony_ci``errno`` variable is set appropriately:
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciEINVAL
5362306a36Sopenharmony_ci    The ``start`` or ``length`` is incorrect, or no buffers have been
5462306a36Sopenharmony_ci    mapped yet.
55