1<refentry id="func-munmap"> 2 <refmeta> 3 <refentrytitle>V4L2 munmap()</refentrytitle> 4 &manvol; 5 </refmeta> 6 7 <refnamediv> 8 <refname>v4l2-munmap</refname> 9 <refpurpose>Unmap device memory</refpurpose> 10 </refnamediv> 11 12 <refsynopsisdiv> 13 <funcsynopsis> 14 <funcsynopsisinfo> 15#include <unistd.h> 16#include <sys/mman.h></funcsynopsisinfo> 17 <funcprototype> 18 <funcdef>int <function>munmap</function></funcdef> 19 <paramdef>void *<parameter>start</parameter></paramdef> 20 <paramdef>size_t <parameter>length</parameter></paramdef> 21 </funcprototype> 22 </funcsynopsis> 23 </refsynopsisdiv> 24 <refsect1> 25 <title>Arguments</title> 26 <variablelist> 27 <varlistentry> 28 <term><parameter>start</parameter></term> 29 <listitem> 30 <para>Address of the mapped buffer as returned by the 31&func-mmap; function.</para> 32 </listitem> 33 </varlistentry> 34 <varlistentry> 35 <term><parameter>length</parameter></term> 36 <listitem> 37 <para>Length of the mapped buffer. This must be the same 38value as given to <function>mmap()</function> and returned by the 39driver in the &v4l2-buffer; <structfield>length</structfield> 40field.</para> 41 </listitem> 42 </varlistentry> 43 </variablelist> 44 </refsect1> 45 46 <refsect1> 47 <title>Description</title> 48 49 <para>Unmaps a previously with the &func-mmap; function mapped 50buffer and frees it, if possible. <!-- ? This function (not freeing) 51has no impact on I/O in progress, specifically it does not imply 52&VIDIOC-STREAMOFF; to terminate I/O. Unmapped buffers can still be 53enqueued, dequeued or queried, they are just not accessible by the 54application.--></para> 55 </refsect1> 56 57 <refsect1> 58 <title>Return Value</title> 59 60 <para>On success <function>munmap()</function> returns 0, on 61failure -1 and the <varname>errno</varname> variable is set 62appropriately:</para> 63 64 <variablelist> 65 <varlistentry> 66 <term><errorcode>EINVAL</errorcode></term> 67 <listitem> 68 <para>The <parameter>start</parameter> or 69<parameter>length</parameter> is incorrect, or no buffers have been 70mapped yet.</para> 71 </listitem> 72 </varlistentry> 73 </variablelist> 74 </refsect1> 75</refentry> 76 77<!-- 78Local Variables: 79mode: sgml 80sgml-parent-document: "v4l2.sgml" 81indent-tabs-mode: nil 82End: 83--> 84