€• Œsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ1/translations/zh_CN/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/zh_TW/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/it_IT/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/ja_JP/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/ko_KR/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/pt_BR/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/sp_SP/driver-api/media/v4l2-mem2mem”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒK/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem.rst”h´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒ3V4L2 Memory to Memory functions and data structures”h]”hŒ3V4L2 Memory to Memory functions and data structures”…”�”}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œv4l2_m2m_ops (C struct)”Œc.v4l2_m2m_ops”hNt”auh1hÝhhÊh²hh³Nh´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒ v4l2_m2m_ops”h]”hŒdesc_signature_line”“”)�”}”(hŒstruct v4l2_m2m_ops”h]”(hŒdesc_sig_keyword”“”)�”}”(hŒstruct”h]”hŒstruct”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1hÿhhûh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jhhûh²hh³jh´KubhŒ desc_name”“”)�”}”(hŒ v4l2_m2m_ops”h]”hŒ desc_sig_name”“”)�”}”(hh÷h]”hŒ v4l2_m2m_ops”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1j(hj$ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j"hhûh²hh³jh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1hùŒsphinx_line_type”Œ declarator”hhõh²hh³jh´Kubah}”(h]”hìah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1hóh³jh´Khhðh²hubhŒ desc_content”“”)�”}”(hhh]”hŒ paragraph”“”)�”}”(hŒ"mem-to-mem device driver callbacks”h]”hŒ"mem-to-mem device driver callbacks”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KhjVh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThhðh²hh³jh´Kubeh}”(h]”h ]”(Œc”Œstruct”eh"]”h$]”h&]”Œdomain”jsŒobjtype”jtŒdesctype”jtŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1hîh²hhhÊh³Nh´NubhŒ container”“”)�”}”(hXs **Definition**:: struct v4l2_m2m_ops { void (*device_run)(void *priv); int (*job_ready)(void *priv); void (*job_abort)(void *priv); }; **Members** ``device_run`` required. Begin the actual job (transaction) inside this callback. The job does NOT have to end before this callback returns (and it will be the usual case). When the job finishes, v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() has to be called. ``job_ready`` optional. Should return 0 if the driver does not have a job fully prepared to run yet (i.e. it will not be able to finish a transaction without sleeping). If not provided, it will be assumed that one source and one destination buffer are all that is required for the driver to perform one full transaction. This method may not sleep. ``job_abort`` optional. Informs the driver that it has to abort the currently running transaction as soon as possible (i.e. as soon as it can stop the device safely; e.g. in the next interrupt handler), even if the transaction would not have been finished by then. After the driver performs the necessary steps, it has to call v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() as if the transaction ended normally. This function does not have to (and will usually not) wait until the device enters a state when it can be stopped.”h]”(hŒ block_quote”“”)�”}”(hŒ¤**Definition**:: struct v4l2_m2m_ops { void (*device_run)(void *priv); int (*job_ready)(void *priv); void (*job_abort)(void *priv); }; ”h]”(jZ)�”}”(hŒ**Definition**::”h]”(hŒstrong”“”)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjŠubhŒ:”…”�”}”(hjŠh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khj†ubhŒ literal_block”“”)�”}”(hŒ‡struct v4l2_m2m_ops { void (*device_run)(void *priv); int (*job_ready)(void *priv); void (*job_abort)(void *priv); };”h]”hŒ‡struct v4l2_m2m_ops { void (*device_run)(void *priv); int (*job_ready)(void *priv); void (*job_abort)(void *priv); };”…”�”}”hj«sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j©h³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khj†ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j„h³j¨h´Khj€ubjZ)�”}”(hŒ **Members**”h]”j�)�”}”(hjÂh]”hŒMembers”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÀubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khj€ubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hX``device_run`` required. Begin the actual job (transaction) inside this callback. The job does NOT have to end before this callback returns (and it will be the usual case). When the job finishes, v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() has to be called. ”h]”(hŒterm”“”)�”}”(hŒ``device_run``”h]”hŒliteral”“”)�”}”(hjçh]”hŒ device_run”…”�”}”(hjëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjåubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KhjßubhŒ definition”“”)�”}”(hhh]”jZ)�”}”(hXrequired. Begin the actual job (transaction) inside this callback. The job does NOT have to end before this callback returns (and it will be the usual case). When the job finishes, v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() has to be called.”h]”hXrequired. Begin the actual job (transaction) inside this callback. The job does NOT have to end before this callback returns (and it will be the usual case). When the job finishes, v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() has to be called.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjßubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jþh´KhjÚubjÞ)�”}”(hX\``job_ready`` optional. Should return 0 if the driver does not have a job fully prepared to run yet (i.e. it will not be able to finish a transaction without sleeping). If not provided, it will be assumed that one source and one destination buffer are all that is required for the driver to perform one full transaction. This method may not sleep. ”h]”(jä)�”}”(hŒ ``job_ready``”h]”jê)�”}”(hj%h]”hŒ job_ready”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj#ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K hjubj)�”}”(hhh]”jZ)�”}”(hXMoptional. Should return 0 if the driver does not have a job fully prepared to run yet (i.e. it will not be able to finish a transaction without sleeping). If not provided, it will be assumed that one source and one destination buffer are all that is required for the driver to perform one full transaction. This method may not sleep.”h]”hXMoptional. Should return 0 if the driver does not have a job fully prepared to run yet (i.e. it will not be able to finish a transaction without sleeping). If not provided, it will be assumed that one source and one destination buffer are all that is required for the driver to perform one full transaction. This method may not sleep.”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khj;ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j:h´K hjÚubjÞ)�”}”(hX``job_abort`` optional. Informs the driver that it has to abort the currently running transaction as soon as possible (i.e. as soon as it can stop the device safely; e.g. in the next interrupt handler), even if the transaction would not have been finished by then. After the driver performs the necessary steps, it has to call v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() as if the transaction ended normally. This function does not have to (and will usually not) wait until the device enters a state when it can be stopped.”h]”(jä)�”}”(hŒ ``job_abort``”h]”jê)�”}”(hj_h]”hŒ job_abort”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K(hjYubj)�”}”(hhh]”jZ)�”}”(hX optional. Informs the driver that it has to abort the currently running transaction as soon as possible (i.e. as soon as it can stop the device safely; e.g. in the next interrupt handler), even if the transaction would not have been finished by then. After the driver performs the necessary steps, it has to call v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() as if the transaction ended normally. This function does not have to (and will usually not) wait until the device enters a state when it can be stopped.”h]”hX optional. Informs the driver that it has to abort the currently running transaction as soon as possible (i.e. as soon as it can stop the device safely; e.g. in the next interrupt handler), even if the transaction would not have been finished by then. After the driver performs the necessary steps, it has to call v4l2_m2m_job_finish() or v4l2_m2m_buf_done_and_job_finish() as if the transaction ended normally. This function does not have to (and will usually not) wait until the device enters a state when it can be stopped.”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K!hjuubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjYubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jth´K(hjÚubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj€ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_queue_ctx (C struct)”Œc.v4l2_m2m_queue_ctx”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_queue_ctx”h]”hú)�”}”(hŒstruct v4l2_m2m_queue_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¹h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjµh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K/ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjµh²hh³jÆh´K/ubj#)�”}”(hŒv4l2_m2m_queue_ctx”h]”j))�”}”(hj³h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hjÙh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÕubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjµh²hh³jÆh´K/ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj±h²hh³jÆh´K/ubah}”(h]”j¬ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÆh´K/hj®h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ4represents a queue for buffers ready to be processed”h]”hŒ4represents a queue for buffers ready to be processed”…”�”}”(hjûh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K4hjøh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj®h²hh³jÆh´K/ubeh}”(h]”h ]”(jsŒstruct”eh"]”h$]”h&]”jxjsjyjjzjj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hXU **Definition**:: struct v4l2_m2m_queue_ctx { struct vb2_queue q; struct list_head rdy_queue; spinlock_t rdy_spinlock; u8 num_rdy; bool buffered; }; **Members** ``q`` pointer to struct :c:type:`vb2_queue` ``rdy_queue`` List of V4L2 mem-to-mem queues ``rdy_spinlock`` spin lock to protect the struct usage ``num_rdy`` number of buffers ready to be processed ``buffered`` is the queue buffered? **Description** Queue for buffers ready to be processed as soon as this instance receives access to the device.”h]”(j…)�”}”(hŒÏ**Definition**:: struct v4l2_m2m_queue_ctx { struct vb2_queue q; struct list_head rdy_queue; spinlock_t rdy_spinlock; u8 num_rdy; bool buffered; }; ”h]”(jZ)�”}”(hŒ**Definition**::”h]”(j�)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjubhŒ:”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K8hjubjª)�”}”(hŒ®struct v4l2_m2m_queue_ctx { struct vb2_queue q; struct list_head rdy_queue; spinlock_t rdy_spinlock; u8 num_rdy; bool buffered; };”h]”hŒ®struct v4l2_m2m_queue_ctx { struct vb2_queue q; struct list_head rdy_queue; spinlock_t rdy_spinlock; u8 num_rdy; bool buffered; };”…”�”}”hj<sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j©h³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K:hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j„h³j;h´K8hjubjZ)�”}”(hŒ **Members**”h]”j�)�”}”(hjSh]”hŒMembers”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KBhjubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ,``q`` pointer to struct :c:type:`vb2_queue` ”h]”(jä)�”}”(hŒ``q``”h]”jê)�”}”(hjrh]”hŒq”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjpubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K8hjlubj)�”}”(hhh]”jZ)�”}”(hŒ%pointer to struct :c:type:`vb2_queue`”h]”(hŒpointer to struct ”…”�”}”(hj‹h²hh³Nh´Nubh)�”}”(hŒ:c:type:`vb2_queue`”h]”jê)�”}”(hj•h]”hŒ vb2_queue”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”(Œxref”jsŒc-type”eh"]”h$]”h&]”uh1jéhj“ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œdriver-api/media/v4l2-mem2mem”Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰Œ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)�”}”Œdata”]”sbŒ reftarget”Œ vb2_queue”uh1hh³j‡h´K8hj‹ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j‡h´K8hjˆubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjlubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j‡h´K8hjiubjÞ)�”}”(hŒ-``rdy_queue`` List of V4L2 mem-to-mem queues ”h]”(jä)�”}”(hŒ ``rdy_queue``”h]”jê)�”}”(hjÕh]”hŒ rdy_queue”…”�”}”(hj×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÓubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K9hjÏubj)�”}”(hhh]”jZ)�”}”(hŒList of V4L2 mem-to-mem queues”h]”hŒList of V4L2 mem-to-mem queues”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jêh´K9hjëubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÏubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jêh´K9hjiubjÞ)�”}”(hŒ7``rdy_spinlock`` spin lock to protect the struct usage ”h]”(jä)�”}”(hŒ``rdy_spinlock``”h]”jê)�”}”(hjh]”hŒ rdy_spinlock”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K:hjubj)�”}”(hhh]”jZ)�”}”(hŒ%spin lock to protect the struct usage”h]”hŒ%spin lock to protect the struct usage”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j#h´K:hj$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j#h´K:hjiubjÞ)�”}”(hŒ4``num_rdy`` number of buffers ready to be processed ”h]”(jä)�”}”(hŒ ``num_rdy``”h]”jê)�”}”(hjGh]”hŒnum_rdy”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjEubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K;hjAubj)�”}”(hhh]”jZ)�”}”(hŒ'number of buffers ready to be processed”h]”hŒ'number of buffers ready to be processed”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j\h´K;hj]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjAubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j\h´K;hjiubjÞ)�”}”(hŒ%``buffered`` is the queue buffered? ”h]”(jä)�”}”(hŒ ``buffered``”h]”jê)�”}”(hj€h]”hŒbuffered”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj~ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K=hjzubj)�”}”(hhh]”jZ)�”}”(hŒis the queue buffered?”h]”hŒis the queue buffered?”…”�”}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K``last_src_buf`` indicate the last source buffer for draining ”h]”(jä)�”}”(hŒ``last_src_buf``”h]”jê)�”}”(hj‰h]”hŒ last_src_buf”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj‡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KUhjƒubj)�”}”(hhh]”jZ)�”}”(hŒ,indicate the last source buffer for draining”h]”hŒ,indicate the last source buffer for draining”…”�”}”(hj¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jžh´KUhjŸubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjƒubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jžh´KUhj±ubjÞ)�”}”(hŒC``next_buf_last`` next capture queud buffer will be tagged as last ”h]”(jä)�”}”(hŒ``next_buf_last``”h]”jê)�”}”(hjÂh]”hŒ next_buf_last”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÀubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KVhj¼ubj)�”}”(hhh]”jZ)�”}”(hŒ0next capture queud buffer will be tagged as last”h]”hŒ0next capture queud buffer will be tagged as last”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j×h´KVhjØubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj¼ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j×h´KVhj±ubjÞ)�”}”(hŒ5``has_stopped`` indicate the device has been stopped ”h]”(jä)�”}”(hŒ``has_stopped``”h]”jê)�”}”(hjûh]”hŒ has_stopped”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjùubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KWhjõubj)�”}”(hhh]”jZ)�”}”(hŒ$indicate the device has been stopped”h]”hŒ$indicate the device has been stopped”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jh´KWhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjõubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jh´KWhj±ubjÞ)�”}”(hX9``ignore_cap_streaming`` If true, job_ready can be called even if the CAPTURE queue is not streaming. This allows firmware to analyze the bitstream header which arrives on the OUTPUT queue. The driver must implement the job_ready callback correctly to make sure that the requirements for actual decoding are met. ”h]”(jä)�”}”(hŒ``ignore_cap_streaming``”h]”jê)�”}”(hj4h]”hŒignore_cap_streaming”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K]hj.ubj)�”}”(hhh]”jZ)�”}”(hXIf true, job_ready can be called even if the CAPTURE queue is not streaming. This allows firmware to analyze the bitstream header which arrives on the OUTPUT queue. The driver must implement the job_ready callback correctly to make sure that the requirements for actual decoding are met.”h]”hXIf true, job_ready can be called even if the CAPTURE queue is not streaming. This allows firmware to analyze the bitstream header which arrives on the OUTPUT queue. The driver must implement the job_ready callback correctly to make sure that the requirements for actual decoding are met.”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KXhjJubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jIh´K]hj±ubjÞ)�”}”(hŒF``m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``m2m_dev``”h]”jê)�”}”(hjnh]”hŒm2m_dev”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjlubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K^hjhubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jƒh´K^hj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjhubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jƒh´K^hj±ubjÞ)�”}”(hŒ7``cap_q_ctx`` Capture (output to memory) queue context ”h]”(jä)�”}”(hŒ ``cap_q_ctx``”h]”jê)�”}”(hj§h]”hŒ cap_q_ctx”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K_hj¡ubj)�”}”(hhh]”jZ)�”}”(hŒ(Capture (output to memory) queue context”h]”hŒ(Capture (output to memory) queue context”…”�”}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¼h´K_hj½ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj¡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¼h´K_hj±ubjÞ)�”}”(hŒ7``out_q_ctx`` Output (input from memory) queue context ”h]”(jä)�”}”(hŒ ``out_q_ctx``”h]”jê)�”}”(hjàh]”hŒ out_q_ctx”…”�”}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÞubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K`hjÚubj)�”}”(hhh]”jZ)�”}”(hŒ(Output (input from memory) queue context”h]”hŒ(Output (input from memory) queue context”…”�”}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jõh´K`hjöubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÚubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jõh´K`hj±ubjÞ)�”}”(hŒ,``queue`` List of memory to memory contexts ”h]”(jä)�”}”(hŒ ``queue``”h]”jê)�”}”(hjh]”hŒqueue”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kahjubj)�”}”(hhh]”jZ)�”}”(hŒ!List of memory to memory contexts”h]”hŒ!List of memory to memory contexts”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j.h´Kahj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j.h´Kahj±ubjÞ)�”}”(hŒ{``job_flags`` Job queue flags, used internally by v4l2-mem2mem.c: ``TRANS_QUEUED``, ``TRANS_RUNNING`` and ``TRANS_ABORT``. ”h]”(jä)�”}”(hŒ ``job_flags``”h]”jê)�”}”(hjRh]”hŒ job_flags”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KchjLubj)�”}”(hhh]”jZ)�”}”(hŒlJob queue flags, used internally by v4l2-mem2mem.c: ``TRANS_QUEUED``, ``TRANS_RUNNING`` and ``TRANS_ABORT``.”h]”(hŒ4Job queue flags, used internally by v4l2-mem2mem.c: ”…”�”}”(hjkh²hh³Nh´Nubjê)�”}”(hŒ``TRANS_QUEUED``”h]”hŒ TRANS_QUEUED”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjkubhŒ, ”…”�”}”(hjkh²hh³Nh´Nubjê)�”}”(hŒ``TRANS_RUNNING``”h]”hŒ TRANS_RUNNING”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjkubhŒ and ”…”�”}”(hjkh²hh³Nh´Nubjê)�”}”(hŒ``TRANS_ABORT``”h]”hŒ TRANS_ABORT”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjkubhŒ.”…”�”}”(hjkh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kbhjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjLubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jgh´Kchj±ubjÞ)�”}”(hŒE``finished`` Wait queue used to signalize when a job queue finished. ”h]”(jä)�”}”(hŒ ``finished``”h]”jê)�”}”(hjÂh]”hŒfinished”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÀubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kdhj¼ubj)�”}”(hhh]”jZ)�”}”(hŒ7Wait queue used to signalize when a job queue finished.”h]”hŒ7Wait queue used to signalize when a job queue finished.”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j×h´KdhjØubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj¼ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j×h´Kdhj±ubjÞ)�”}”(hŒ ``priv`` Instance private data ”h]”(jä)�”}”(hŒ``priv``”h]”jê)�”}”(hjûh]”hŒpriv”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjùubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kfhjõubj)�”}”(hhh]”jZ)�”}”(hŒInstance private data”h]”hŒInstance private data”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kehj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjõubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j h´Kfhj±ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj_ubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hj7 h]”hŒ Description”…”�”}”(hj9 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj5 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Khhj_ubjZ)�”}”(hŒPThe memory to memory context is specific to a file handle, NOT to e.g. a device.”h]”hŒPThe memory to memory context is specific to a file handle, NOT to e.g. a device.”…”�”}”(hjM h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kehj_ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_buffer (C struct)”Œc.v4l2_m2m_buffer”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_buffer”h]”hú)�”}”(hŒstruct v4l2_m2m_buffer”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj| h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjx h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kkubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŠ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjx h²hh³j‰ h´Kkubj#)�”}”(hŒv4l2_m2m_buffer”h]”j))�”}”(hjv h]”hŒv4l2_m2m_buffer”…”�”}”(hjœ h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj˜ ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjx h²hh³j‰ h´Kkubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjt h²hh³j‰ h´Kkubah}”(h]”jo ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j‰ h´Kkhjq h²hubjU)�”}”(hhh]”jZ)�”}”(hŒMemory to memory buffer”h]”hŒMemory to memory buffer”…”�”}”(hj¾ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K…hj» h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjq h²hh³j‰ h´Kkubeh}”(h]”h ]”(jsŒstruct”eh"]”h$]”h&]”jxjsjyjÖ jzjÖ j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒè **Definition**:: struct v4l2_m2m_buffer { struct vb2_v4l2_buffer vb; struct list_head list; }; **Members** ``vb`` pointer to struct :c:type:`vb2_v4l2_buffer` ``list`` list of m2m buffers”h]”(j…)�”}”(hŒ|**Definition**:: struct v4l2_m2m_buffer { struct vb2_v4l2_buffer vb; struct list_head list; }; ”h]”(jZ)�”}”(hŒ**Definition**::”h]”(j�)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjæ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjâ ubhŒ:”…”�”}”(hjâ h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K‰hjÞ ubjª)�”}”(hŒastruct v4l2_m2m_buffer { struct vb2_v4l2_buffer vb; struct list_head list; };”h]”hŒastruct v4l2_m2m_buffer { struct vb2_v4l2_buffer vb; struct list_head list; };”…”�”}”hjÿ sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j©h³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K‹hjÞ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j„h³jþ h´K‰hjÚ ubjZ)�”}”(hŒ **Members**”h]”j�)�”}”(hj h]”hŒMembers”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K�hjÚ ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ3``vb`` pointer to struct :c:type:`vb2_v4l2_buffer` ”h]”(jä)�”}”(hŒ``vb``”h]”jê)�”}”(hj5 h]”hŒvb”…”�”}”(hj7 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj3 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kˆhj/ ubj)�”}”(hhh]”jZ)�”}”(hŒ+pointer to struct :c:type:`vb2_v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hjN h²hh³Nh´Nubh)�”}”(hŒ:c:type:`vb2_v4l2_buffer`”h]”jê)�”}”(hjX h]”hŒvb2_v4l2_buffer”…”�”}”(hjZ h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjV ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œvb2_v4l2_buffer”uh1hh³jJ h´KˆhjN ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jJ h´KˆhjK ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj/ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jJ h´Kˆhj, ubjÞ)�”}”(hŒ``list`` list of m2m buffers”h]”(jä)�”}”(hŒ``list``”h]”jê)�”}”(hj� h]”hŒlist”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj‹ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kˆhj‡ ubj)�”}”(hhh]”jZ)�”}”(hŒlist of m2m buffers”h]”hŒlist of m2m buffers”…”�”}”(hj¦ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K‰hj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj‡ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¢ h´Kˆhj, ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÚ ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ#v4l2_m2m_get_curr_priv (C function)”Œc.v4l2_m2m_get_curr_priv”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒdevice_run ` callback has been called on the driver.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjh]”hŒ Parameters”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K¿hjubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hj5h]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K¾hj/ubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jJh´K¾hjKubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jJh´K¾hj,ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjnh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjlubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K¿hjhubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj‡h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj‘h]”hŒ v4l2_m2m_ctx”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj�ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jƒh´K¿hj‡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jƒh´K¿hj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjhubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jƒh´K¿hj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjÈh]”hŒ Description”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÆubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÁhjubjZ)�”}”(hŒÂCalled by a driver to yield back the device after it has finished with it. Should be called as soon as possible after reaching a state which allows other instances to take control of the device.”h]”hŒÂCalled by a driver to yield back the device after it has finished with it. Should be called as soon as possible after reaching a state which allows other instances to take control of the device.”…”�”}”(hjÞh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÀhjubjZ)�”}”(hŒƒThis function has to be called only after :c:type:`v4l2_m2m_ops->device_run ` callback has been called on the driver.”h]”(hŒ*This function has to be called only after ”…”�”}”(hjíh²hh³Nh´Nubh)�”}”(hŒ1:c:type:`v4l2_m2m_ops->device_run `”h]”jê)�”}”(hj÷h]”hŒv4l2_m2m_ops->device_run”…”�”}”(hjùh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjõubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j³j·j»Œ v4l2_m2m_ops”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÄhjíubhŒ( callback has been called on the driver.”…”�”}”(hjíh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jh´KÄhjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ-v4l2_m2m_buf_done_and_job_finish (C function)”Œ"c.v4l2_m2m_buf_done_and_job_finish”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒvoid v4l2_m2m_buf_done_and_job_finish (struct v4l2_m2m_dev *m2m_dev, struct v4l2_m2m_ctx *m2m_ctx, enum vb2_buffer_state state)”h]”hú)�”}”(hŒ~void v4l2_m2m_buf_done_and_job_finish(struct v4l2_m2m_dev *m2m_dev, struct v4l2_m2m_ctx *m2m_ctx, enum vb2_buffer_state state)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj;h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÌubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj;h²hh³jMh´KÌubj#)�”}”(hŒ v4l2_m2m_buf_done_and_job_finish”h]”j))�”}”(hŒ v4l2_m2m_buf_done_and_job_finish”h]”hŒ v4l2_m2m_buf_done_and_job_finish”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj\ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj;h²hh³jMh´KÌubj1 )�”}”(hŒY(struct v4l2_m2m_dev *m2m_dev, struct v4l2_m2m_ctx *m2m_ctx, enum vb2_buffer_state state)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_dev *m2m_dev”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjxubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjxubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_dev”h]”hŒ v4l2_m2m_dev”…”�”}”(hjšh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj—ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jœŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jbsbŒ"c.v4l2_m2m_buf_done_and_job_finish”†”asbuh1hhjxubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjxubj )�”}”(hj h]”hŒ*”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjxubj))�”}”(hŒm2m_dev”h]”hŒm2m_dev”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjxubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjtubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjêubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjûh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjêubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j¶Œ"c.v4l2_m2m_buf_done_and_job_finish”†”asbuh1hhjêubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjêubj )�”}”(hj h]”hŒ*”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjêubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjêubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjtubj7 )�”}”(hŒenum vb2_buffer_state state”h]”(j)�”}”(hjI h]”hŒenum”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjZubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjZubh)�”}”(hhh]”j))�”}”(hŒvb2_buffer_state”h]”hŒvb2_buffer_state”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjyubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j~Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”j¶Œ"c.v4l2_m2m_buf_done_and_job_finish”†”asbuh1hhjZubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjšh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjZubj))�”}”(hŒstate”h]”hŒstate”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjZubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjtubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj;h²hh³jMh´KÌubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj7h²hh³jMh´KÌubah}”(h]”j2ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jMh´KÌhj4h²hubjU)�”}”(hhh]”jZ)�”}”(hŒwreturn source/destination buffers with state and inform the framework that a job has been finished and have it clean up”h]”hŒwreturn source/destination buffers with state and inform the framework that a job has been finished and have it clean up”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÌhjÏh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj4h²hh³jMh´KÌubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjêjzjêj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hXÏ**Parameters** ``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``enum vb2_buffer_state state`` vb2 buffer state passed to v4l2_m2m_buf_done(). **Description** Drivers that set V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF must use this function instead of job_finish() to take held buffers into account. It is optional for other drivers. This function removes the source buffer from the ready list and returns it with the given state. The same is done for the destination buffer, unless it is marked 'held'. In that case the buffer is kept on the ready list. After that the job is finished (see job_finish()). This allows for multiple output buffers to be used to fill in a single capture buffer. This is typically used by stateless decoders where multiple e.g. H.264 slices contribute to a single decoded frame.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjôh]”hŒ Parameters”…”�”}”(hjöh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjòubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÐhjîubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hjh]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÐhj ubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j(h´KÐhj)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j(h´KÐhj ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjLh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjJubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÑhjFubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjeh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjoh]”hŒ v4l2_m2m_ctx”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjmubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jah´KÑhjeubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jah´KÑhjbubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjFubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jah´KÑhj ubjÞ)�”}”(hŒP``enum vb2_buffer_state state`` vb2 buffer state passed to v4l2_m2m_buf_done(). ”h]”(jä)�”}”(hŒ``enum vb2_buffer_state state``”h]”jê)�”}”(hj¤h]”hŒenum vb2_buffer_state state”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÒhjžubj)�”}”(hhh]”jZ)�”}”(hŒ/vb2 buffer state passed to v4l2_m2m_buf_done().”h]”hŒ/vb2 buffer state passed to v4l2_m2m_buf_done().”…”�”}”(hj½h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¹h´KÒhjºubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjžubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¹h´KÒhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjîubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjßh]”hŒ Description”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÝubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÔhjîubjZ)�”}”(hŒ¯Drivers that set V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF must use this function instead of job_finish() to take held buffers into account. It is optional for other drivers.”h]”hŒ¯Drivers that set V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF must use this function instead of job_finish() to take held buffers into account. It is optional for other drivers.”…”�”}”(hjõh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÓhjîubjZ)�”}”(hŒÜThis function removes the source buffer from the ready list and returns it with the given state. The same is done for the destination buffer, unless it is marked 'held'. In that case the buffer is kept on the ready list.”h]”hŒàThis function removes the source buffer from the ready list and returns it with the given state. The same is done for the destination buffer, unless it is marked ‘held’. In that case the buffer is kept on the ready list.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´K×hjîubjZ)�”}”(hŒ2After that the job is finished (see job_finish()).”h]”hŒ2After that the job is finished (see job_finish()).”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÛhjîubjZ)�”}”(hŒÊThis allows for multiple output buffers to be used to fill in a single capture buffer. This is typically used by stateless decoders where multiple e.g. H.264 slices contribute to a single decoded frame.”h]”hŒÊThis allows for multiple output buffers to be used to fill in a single capture buffer. This is typically used by stateless decoders where multiple e.g. H.264 slices contribute to a single decoded frame.”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KÝhjîubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_clear_state (C function)”Œc.v4l2_m2m_clear_state”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ8void v4l2_m2m_clear_state (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒ7void v4l2_m2m_clear_state(struct v4l2_m2m_ctx *m2m_ctx)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjMh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kíubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjMh²hh³j_h´Kíubj#)�”}”(hŒv4l2_m2m_clear_state”h]”j))�”}”(hŒv4l2_m2m_clear_state”h]”hŒv4l2_m2m_clear_state”…”�”}”(hjrh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjnubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjMh²hh³j_h´Kíubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjŠubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj›h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŠubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj©ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j®Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jtsbŒc.v4l2_m2m_clear_state”†”asbuh1hhjŠubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÌh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŠubj )�”}”(hj h]”hŒ*”…”�”}”(hjÚh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjŠubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjçh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjŠubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj†ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjMh²hh³j_h´Kíubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjIh²hh³j_h´Kíubah}”(h]”jDah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j_h´KíhjFh²hubjU)�”}”(hhh]”jZ)�”}”(hŒclear encoding/decoding state”h]”hŒclear encoding/decoding state”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kíhjh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjFh²hh³j_h´Kíubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj)jzj)j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj3h]”hŒ Parameters”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kñhj-ubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjRh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´KóhjLubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjkh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjuh]”hŒ v4l2_m2m_ctx”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjsubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kïhjkubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j’h´Kïhjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjLubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jgh´KóhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj-ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ"v4l2_m2m_mark_stopped (C function)”Œc.v4l2_m2m_mark_stopped”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ9void v4l2_m2m_mark_stopped (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒ8void v4l2_m2m_mark_stopped(struct v4l2_m2m_ctx *m2m_ctx)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjËh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjÇh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kúubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÚh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÇh²hh³jÙh´Kúubj#)�”}”(hŒv4l2_m2m_mark_stopped”h]”j))�”}”(hŒv4l2_m2m_mark_stopped”h]”hŒv4l2_m2m_mark_stopped”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjèubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjÇh²hh³jÙh´Kúubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj#ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j(Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jîsbŒc.v4l2_m2m_mark_stopped”†”asbuh1hhjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubj )�”}”(hj h]”hŒ*”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjÇh²hh³jÙh´Kúubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjÃh²hh³jÙh´Kúubah}”(h]”j¾ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÙh´KúhjÀh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ.set current encoding/decoding state as stopped”h]”hŒ.set current encoding/decoding state as stopped”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kúhjˆh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjÀh²hh³jÙh´Kúubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj£jzj£j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj­h]”hŒ Parameters”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj«ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kþhj§ubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjÌh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÊubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjÆubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjåh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjïh]”hŒ v4l2_m2m_ctx”…”�”}”(hjñh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjíubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Kühjåubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j h´Kühjâubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÆubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jáh´MhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj§ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ%v4l2_m2m_dst_buf_is_last (C function)”Œc.v4l2_m2m_dst_buf_is_last”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ$ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¸$h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj´$ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÅ$h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj´$ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjÖ$h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÓ$ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jØ$Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”j€$Œc.v4l2_m2m_reqbufs”†”asbuh1hhj´$ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjô$h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj´$ubj )�”}”(hj h]”hŒ*”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj´$ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj´$ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj>$ubj7 )�”}”(hŒ#struct v4l2_requestbuffers *reqbufs”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj(%h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj$%ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj5%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj$%ubh)�”}”(hhh]”j))�”}”(hŒv4l2_requestbuffers”h]”hŒv4l2_requestbuffers”…”�”}”(hjF%h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjC%ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jH%Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”j€$Œc.v4l2_m2m_reqbufs”†”asbuh1hhj$%ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjd%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj$%ubj )�”}”(hj h]”hŒ*”…”�”}”(hjr%h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj$%ubj))�”}”(hŒreqbufs”h]”hŒreqbufs”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj$%ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj>$ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj$h²hh³j$h´MSubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj$h²hh³j$h´MSubah}”(h]”jü#ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j$h´MShjþ#h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ%multi-queue-aware REQBUFS multiplexer”h]”hŒ%multi-queue-aware REQBUFS multiplexer”…”�”}”(hj©%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MShj¦%h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jT•hjþ#h²hh³j$h´MSubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÁ%jzjÁ%j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_requestbuffers *reqbufs`` pointer to struct :c:type:`v4l2_requestbuffers`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjË%h]”hŒ Parameters”…”�”}”(hjÍ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÉ%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MWhjÅ%ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hjê%h]”hŒstruct file *file”…”�”}”(hjì%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjè%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MUhjä%ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj&h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hj &h]”hŒfile”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj &ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³jÿ%h´MUhj&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÿ%h´MUhj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjä%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÿ%h´MUhjá%ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjB&h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjD&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj@&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MVhj<&ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj[&h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hje&h]”hŒ v4l2_m2m_ctx”…”�”}”(hjg&h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjc&ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jW&h´MVhj[&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jW&h´MVhjX&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj<&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jW&h´MVhjá%ubjÞ)�”}”(hŒW``struct v4l2_requestbuffers *reqbufs`` pointer to struct :c:type:`v4l2_requestbuffers`”h]”(jä)�”}”(hŒ'``struct v4l2_requestbuffers *reqbufs``”h]”jê)�”}”(hjš&h]”hŒ#struct v4l2_requestbuffers *reqbufs”…”�”}”(hjœ&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj˜&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MXhj”&ubj)�”}”(hhh]”jZ)�”}”(hŒ/pointer to struct :c:type:`v4l2_requestbuffers`”h]”(hŒpointer to struct ”…”�”}”(hj³&h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_requestbuffers`”h]”jê)�”}”(hj½&h]”hŒv4l2_requestbuffers”…”�”}”(hj¿&h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj»&ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œv4l2_requestbuffers”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MWhj³&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÚ&h´MWhj°&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj”&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¯&h´MXhjá%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÅ%ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_querybuf (C function)”Œc.v4l2_m2m_querybuf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ`int v4l2_m2m_querybuf (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”hú)�”}”(hŒ_int v4l2_m2m_querybuf(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj'h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M]ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj"'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj'h²hh³j!'h´M]ubj#)�”}”(hŒv4l2_m2m_querybuf”h]”j))�”}”(hŒv4l2_m2m_querybuf”h]”hŒv4l2_m2m_querybuf”…”�”}”(hj4'h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj0'ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj'h²hh³j!'h´M]ubj1 )�”}”(hŒJ(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjP'h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjL'ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj]'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjL'ubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjn'h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjk'ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jp'Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j6'sbŒc.v4l2_m2m_querybuf”†”asbuh1hhjL'ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŽ'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjL'ubj )�”}”(hj h]”hŒ*”…”�”}”(hjœ'h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjL'ubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj©'h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjL'ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjH'ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÂ'h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj¾'ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÏ'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¾'ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjà'h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÝ'ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jâ'Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jŠ'Œc.v4l2_m2m_querybuf”†”asbuh1hhj¾'ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjþ'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¾'ubj )�”}”(hj h]”hŒ*”…”�”}”(hj (h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj¾'ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¾'ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjH'ubj7 )�”}”(hŒstruct v4l2_buffer *buf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj2(h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj.(ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj?(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj.(ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_buffer”h]”hŒ v4l2_buffer”…”�”}”(hjP(h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjM(ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jR(Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jŠ'Œc.v4l2_m2m_querybuf”†”asbuh1hhj.(ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjn(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj.(ubj )�”}”(hj h]”hŒ*”…”�”}”(hj|(h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj.(ubj))�”}”(hŒbuf”h]”hŒbuf”…”�”}”(hj‰(h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj.(ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjH'ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj'h²hh³j!'h´M]ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj 'h²hh³j!'h´M]ubah}”(h]”j'ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j!'h´M]hj'h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ&multi-queue-aware QUERYBUF multiplexer”h]”hŒ&multi-queue-aware QUERYBUF multiplexer”…”�”}”(hj³(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M]hj°(h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj'h²hh³j!'h´M]ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjË(jzjË(j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX@**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer` **Description** See v4l2_m2m_mmap() documentation for details.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÕ(h]”hŒ Parameters”…”�”}”(hj×(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÓ(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MahjÏ(ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hjô(h]”hŒstruct file *file”…”�”}”(hjö(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjò(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M_hjî(ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj )h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hj)h]”hŒfile”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj)ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³j )h´M_hj )ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j )h´M_hj )ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjî(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j )h´M_hjë(ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjL)h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjN)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjJ)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M`hjF)ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hje)h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjo)h]”hŒ v4l2_m2m_ctx”…”�”}”(hjq)h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjm)ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³ja)h´M`hje)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³ja)h´M`hjb)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjF)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³ja)h´M`hjë(ubjÞ)�”}”(hŒD``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer` ”h]”(jä)�”}”(hŒ``struct v4l2_buffer *buf``”h]”jê)�”}”(hj¤)h]”hŒstruct v4l2_buffer *buf”…”�”}”(hj¦)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¢)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mahjž)ubj)�”}”(hhh]”jZ)�”}”(hŒ'pointer to struct :c:type:`v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hj½)h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_buffer`”h]”jê)�”}”(hjÇ)h]”hŒ v4l2_buffer”…”�”}”(hjÉ)h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÅ)ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_buffer”uh1hh³j¹)h´Mahj½)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¹)h´Mahjº)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjž)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¹)h´Mahjë(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÏ(ubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjþ)h]”hŒ Description”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjü)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MchjÏ(ubjZ)�”}”(hŒ.See v4l2_m2m_mmap() documentation for details.”h]”hŒ.See v4l2_m2m_mmap() documentation for details.”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MbhjÏ(ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_qbuf (C function)”Œc.v4l2_m2m_qbuf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ\int v4l2_m2m_qbuf (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”hú)�”}”(hŒ[int v4l2_m2m_qbuf(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hjC*h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj?*h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Miubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjR*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj?*h²hh³jQ*h´Miubj#)�”}”(hŒ v4l2_m2m_qbuf”h]”j))�”}”(hŒ v4l2_m2m_qbuf”h]”hŒ v4l2_m2m_qbuf”…”�”}”(hjd*h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj`*ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj?*h²hh³jQ*h´Miubj1 )�”}”(hŒJ(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj€*h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj|*ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj|*ubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjž*h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj›*ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j *Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jf*sbŒc.v4l2_m2m_qbuf”†”asbuh1hhj|*ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¾*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj|*ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÌ*h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj|*ubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjÙ*h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj|*ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjx*ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjò*h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjî*ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÿ*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjî*ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj +ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j+Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jº*Œc.v4l2_m2m_qbuf”†”asbuh1hhjî*ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj.+h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjî*ubj )�”}”(hj h]”hŒ*”…”�”}”(hj<+h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjî*ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjI+h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjî*ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjx*ubj7 )�”}”(hŒstruct v4l2_buffer *buf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjb+h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj^+ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjo+h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj^+ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_buffer”h]”hŒ v4l2_buffer”…”�”}”(hj€+h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj}+ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j‚+Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jº*Œc.v4l2_m2m_qbuf”†”asbuh1hhj^+ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjž+h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj^+ubj )�”}”(hj h]”hŒ*”…”�”}”(hj¬+h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj^+ubj))�”}”(hŒbuf”h]”hŒbuf”…”�”}”(hj¹+h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj^+ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjx*ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj?*h²hh³jQ*h´Miubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj;*h²hh³jQ*h´Miubah}”(h]”j6*ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jQ*h´Mihj8*h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ=enqueue a source or destination buffer, depending on the type”h]”hŒ=enqueue a source or destination buffer, depending on the type”…”�”}”(hjã+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mihjà+h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj8*h²hh³jQ*h´Miubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjû+jzjû+j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒÿ**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj,h]”hŒ Parameters”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mmhjÿ+ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj$,h]”hŒstruct file *file”…”�”}”(hj&,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj",ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mlhj,ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj=,h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hjG,h]”hŒfile”…”�”}”(hjI,h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjE,ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³j9,h´Mlhj=,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j9,h´Mlhj:,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j9,h´Mlhj,ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj|,h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj~,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjz,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mmhjv,ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj•,h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjŸ,h]”hŒ v4l2_m2m_ctx”…”�”}”(hj¡,h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj�,ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j‘,h´Mmhj•,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j‘,h´Mmhj’,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjv,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j‘,h´Mmhj,ubjÞ)�”}”(hŒC``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jä)�”}”(hŒ``struct v4l2_buffer *buf``”h]”jê)�”}”(hjÔ,h]”hŒstruct v4l2_buffer *buf”…”�”}”(hjÖ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÒ,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MohjÎ,ubj)�”}”(hhh]”jZ)�”}”(hŒ'pointer to struct :c:type:`v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hjí,h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_buffer`”h]”jê)�”}”(hj÷,h]”hŒ v4l2_buffer”…”�”}”(hjù,h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjõ,ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_buffer”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mnhjí,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j-h´Mnhjê,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÎ,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jé,h´Mohj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÿ+ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_dqbuf (C function)”Œc.v4l2_m2m_dqbuf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ]int v4l2_m2m_dqbuf (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”hú)�”}”(hŒ\int v4l2_m2m_dqbuf(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hjM-h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjI-h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mtubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj\-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjI-h²hh³j[-h´Mtubj#)�”}”(hŒv4l2_m2m_dqbuf”h]”j))�”}”(hŒv4l2_m2m_dqbuf”h]”hŒv4l2_m2m_dqbuf”…”�”}”(hjn-h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjj-ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjI-h²hh³j[-h´Mtubj1 )�”}”(hŒJ(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjŠ-h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj†-ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj—-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj†-ubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj¨-h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¥-ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jª-Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jp-sbŒc.v4l2_m2m_dqbuf”†”asbuh1hhj†-ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÈ-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj†-ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÖ-h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj†-ubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjã-h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj†-ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj‚-ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjü-h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjø-ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj .h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjø-ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj.ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j.Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÄ-Œc.v4l2_m2m_dqbuf”†”asbuh1hhjø-ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj8.h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjø-ubj )�”}”(hj h]”hŒ*”…”�”}”(hjF.h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjø-ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjS.h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjø-ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj‚-ubj7 )�”}”(hŒstruct v4l2_buffer *buf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjl.h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjh.ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjy.h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjh.ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_buffer”h]”hŒ v4l2_buffer”…”�”}”(hjŠ.h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj‡.ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jŒ.Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÄ-Œc.v4l2_m2m_dqbuf”†”asbuh1hhjh.ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¨.h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjh.ubj )�”}”(hj h]”hŒ*”…”�”}”(hj¶.h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjh.ubj))�”}”(hŒbuf”h]”hŒbuf”…”�”}”(hjÃ.h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjh.ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj‚-ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjI-h²hh³j[-h´Mtubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjE-h²hh³j[-h´Mtubah}”(h]”j@-ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j[-h´MthjB-h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ=dequeue a source or destination buffer, depending on the type”h]”hŒ=dequeue a source or destination buffer, depending on the type”…”�”}”(hjí.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mthjê.h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjB-h²hh³j[-h´Mtubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj/jzj/j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒÿ**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj/h]”hŒ Parameters”…”�”}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj /ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mxhj /ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj./h]”hŒstruct file *file”…”�”}”(hj0/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj,/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mwhj(/ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hjG/h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hjQ/h]”hŒfile”…”�”}”(hjS/h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjO/ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³jC/h´MwhjG/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jC/h´MwhjD/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj(/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jC/h´Mwhj%/ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj†/h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjˆ/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj„/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mxhj€/ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjŸ/h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj©/h]”hŒ v4l2_m2m_ctx”…”�”}”(hj«/h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj§/ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j›/h´MxhjŸ/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j›/h´Mxhjœ/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj€/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j›/h´Mxhj%/ubjÞ)�”}”(hŒC``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jä)�”}”(hŒ``struct v4l2_buffer *buf``”h]”jê)�”}”(hjÞ/h]”hŒstruct v4l2_buffer *buf”…”�”}”(hjà/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÜ/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MzhjØ/ubj)�”}”(hhh]”jZ)�”}”(hŒ'pointer to struct :c:type:`v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hj÷/h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_buffer`”h]”jê)�”}”(hj0h]”hŒ v4l2_buffer”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÿ/ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_buffer”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Myhj÷/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j0h´Myhjô/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjØ/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jó/h´Mzhj%/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj /ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_prepare_buf (C function)”Œc.v4l2_m2m_prepare_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒcint v4l2_m2m_prepare_buf (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”hú)�”}”(hŒbint v4l2_m2m_prepare_buf(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hjW0h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjS0h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjf0h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjS0h²hh³je0h´Mubj#)�”}”(hŒv4l2_m2m_prepare_buf”h]”j))�”}”(hŒv4l2_m2m_prepare_buf”h]”hŒv4l2_m2m_prepare_buf”…”�”}”(hjx0h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjt0ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjS0h²hh³je0h´Mubj1 )�”}”(hŒJ(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_buffer *buf)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj”0h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj�0ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¡0h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�0ubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj²0h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¯0ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j´0Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jz0sbŒc.v4l2_m2m_prepare_buf”†”asbuh1hhj�0ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÒ0h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�0ubj )�”}”(hj h]”hŒ*”…”�”}”(hjà0h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj�0ubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjí0h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj�0ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjŒ0ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj1ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj1ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj$1h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj!1ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j&1Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÎ0Œc.v4l2_m2m_prepare_buf”†”asbuh1hhj1ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjB1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj1ubj )�”}”(hj h]”hŒ*”…”�”}”(hjP1h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj1ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj]1h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj1ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjŒ0ubj7 )�”}”(hŒstruct v4l2_buffer *buf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjv1h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjr1ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjƒ1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjr1ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_buffer”h]”hŒ v4l2_buffer”…”�”}”(hj”1h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj‘1ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j–1Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÎ0Œc.v4l2_m2m_prepare_buf”†”asbuh1hhjr1ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj²1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjr1ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÀ1h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjr1ubj))�”}”(hŒbuf”h]”hŒbuf”…”�”}”(hjÍ1h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjr1ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjŒ0ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjS0h²hh³je0h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjO0h²hh³je0h´Mubah}”(h]”jJ0ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³je0h´MhjL0h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ=prepare a source or destination buffer, depending on the type”h]”hŒ=prepare a source or destination buffer, depending on the type”…”�”}”(hj÷1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhjô1h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjL0h²hh³je0h´Mubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj2jzj2j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒÿ**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj2h]”hŒ Parameters”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mƒhj2ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj82h]”hŒstruct file *file”…”�”}”(hj:2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj62ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M‚hj22ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hjQ2h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hj[2h]”hŒfile”…”�”}”(hj]2h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjY2ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³jM2h´M‚hjQ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jM2h´M‚hjN2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj22ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jM2h´M‚hj/2ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj�2h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj’2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjŽ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MƒhjŠ2ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj©2h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj³2h]”hŒ v4l2_m2m_ctx”…”�”}”(hjµ2h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj±2ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j¥2h´Mƒhj©2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¥2h´Mƒhj¦2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjŠ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¥2h´Mƒhj/2ubjÞ)�”}”(hŒC``struct v4l2_buffer *buf`` pointer to struct :c:type:`v4l2_buffer`”h]”(jä)�”}”(hŒ``struct v4l2_buffer *buf``”h]”jê)�”}”(hjè2h]”hŒstruct v4l2_buffer *buf”…”�”}”(hjê2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjæ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M…hjâ2ubj)�”}”(hhh]”jZ)�”}”(hŒ'pointer to struct :c:type:`v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hj3h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_buffer`”h]”jê)�”}”(hj 3h]”hŒ v4l2_buffer”…”�”}”(hj 3h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj 3ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_buffer”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M„hj3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j(3h´M„hjþ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjâ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jý2h´M…hj/2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj2ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_create_bufs (C function)”Œc.v4l2_m2m_create_bufs”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒnint v4l2_m2m_create_bufs (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_create_buffers *create)”h]”hú)�”}”(hŒmint v4l2_m2m_create_bufs(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_create_buffers *create)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hja3h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj]3h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MŠubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjp3h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj]3h²hh³jo3h´MŠubj#)�”}”(hŒv4l2_m2m_create_bufs”h]”j))�”}”(hŒv4l2_m2m_create_bufs”h]”hŒv4l2_m2m_create_bufs”…”�”}”(hj‚3h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj~3ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj]3h²hh³jo3h´MŠubj1 )�”}”(hŒU(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_create_buffers *create)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjž3h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjš3ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj«3h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjš3ubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj¼3h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¹3ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j¾3Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j„3sbŒc.v4l2_m2m_create_bufs”†”asbuh1hhjš3ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÜ3h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjš3ubj )�”}”(hj h]”hŒ*”…”�”}”(hjê3h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjš3ubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj÷3h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjš3ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj–3ubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj 4ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj 4ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj.4h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj+4ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j04Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jØ3Œc.v4l2_m2m_create_bufs”†”asbuh1hhj 4ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjL4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj 4ubj )�”}”(hj h]”hŒ*”…”�”}”(hjZ4h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj 4ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjg4h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj 4ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj–3ubj7 )�”}”(hŒ"struct v4l2_create_buffers *create”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj€4h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj|4ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj|4ubh)�”}”(hhh]”j))�”}”(hŒv4l2_create_buffers”h]”hŒv4l2_create_buffers”…”�”}”(hjž4h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj›4ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j 4Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jØ3Œc.v4l2_m2m_create_bufs”†”asbuh1hhj|4ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¼4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj|4ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÊ4h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj|4ubj))�”}”(hŒcreate”h]”hŒcreate”…”�”}”(hj×4h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj|4ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj–3ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj]3h²hh³jo3h´MŠubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjY3h²hh³jo3h´MŠubah}”(h]”jT3ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jo3h´MŠhjV3h²hubjU)�”}”(hhh]”jZ)�”}”(hŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mªhj>h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjg<h²hh³j€<h´Mªubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj>jzj>j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``enum v4l2_buf_type type`` type of the V4L2 buffer, as defined by enum :c:type:`v4l2_buf_type`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj'>h]”hŒ Parameters”…”�”}”(hj)>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj%>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M®hj!>ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hjF>h]”hŒstruct file *file”…”�”}”(hjH>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjD>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¬hj@>ubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj_>h²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hji>h]”hŒfile”…”�”}”(hjk>h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjg>ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³j[>h´M¬hj_>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j[>h´M¬hj\>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj@>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j[>h´M¬hj=>ubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjž>h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj >h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjœ>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M­hj˜>ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj·>h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÁ>h]”hŒ v4l2_m2m_ctx”…”�”}”(hjÃ>h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj¿>ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j³>h´M­hj·>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j³>h´M­hj´>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj˜>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j³>h´M­hj=>ubjÞ)�”}”(hŒ_``enum v4l2_buf_type type`` type of the V4L2 buffer, as defined by enum :c:type:`v4l2_buf_type`”h]”(jä)�”}”(hŒ``enum v4l2_buf_type type``”h]”jê)�”}”(hjö>h]”hŒenum v4l2_buf_type type”…”�”}”(hjø>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjô>ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¯hjð>ubj)�”}”(hhh]”jZ)�”}”(hŒCtype of the V4L2 buffer, as defined by enum :c:type:`v4l2_buf_type`”h]”(hŒ,type of the V4L2 buffer, as defined by enum ”…”�”}”(hj?h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_buf_type`”h]”jê)�”}”(hj?h]”hŒ v4l2_buf_type”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj?ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_buf_type”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M®hj?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j6?h´M®hj ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjð>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j ?h´M¯hj=>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj!>ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ2v4l2_m2m_update_start_streaming_state (C function)”Œ'c.v4l2_m2m_update_start_streaming_state”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ^void v4l2_m2m_update_start_streaming_state (struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”hú)�”}”(hŒ]void v4l2_m2m_update_start_streaming_state(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjo?h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjk?h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M´ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj~?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjk?h²hh³j}?h´M´ubj#)�”}”(hŒ%v4l2_m2m_update_start_streaming_state”h]”j))�”}”(hŒ%v4l2_m2m_update_start_streaming_state”h]”hŒ%v4l2_m2m_update_start_streaming_state”…”�”}”(hj�?h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjŒ?ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjk?h²hh³j}?h´M´ubj1 )�”}”(hŒ3(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¬?h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj¨?ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¹?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¨?ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjÊ?h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÇ?ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÌ?Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j’?sbŒ'c.v4l2_m2m_update_start_streaming_state”†”asbuh1hhj¨?ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjê?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¨?ubj )�”}”(hj h]”hŒ*”…”�”}”(hjø?h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj¨?ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¨?ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj¤?ubj7 )�”}”(hŒstruct vb2_queue *q”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj@ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj+@h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj@ubh)�”}”(hhh]”j))�”}”(hŒ vb2_queue”h]”hŒ vb2_queue”…”�”}”(hj<@h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj9@ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j>@Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jæ?Œ'c.v4l2_m2m_update_start_streaming_state”†”asbuh1hhj@ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjZ@h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj@ubj )�”}”(hj h]”hŒ*”…”�”}”(hjh@h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj@ubj))�”}”(hŒq”h]”hŒq”…”�”}”(hju@h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj@ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj¤?ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjk?h²hh³j}?h´M´ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjg?h²hh³j}?h´M´ubah}”(h]”jb?ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j}?h´M´hjd?h²hubjU)�”}”(hhh]”jZ)�”}”(hŒbupdate the encoding/decoding session state when a start of streaming of a video queue is requested”h]”hŒbupdate the encoding/decoding session state when a start of streaming of a video queue is requested”…”�”}”(hjŸ@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M´hjœ@h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjd?h²hh³j}?h´M´ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj·@jzj·@j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒŸ**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vb2_queue *q`` queue”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÁ@h]”hŒ Parameters”…”�”}”(hjÃ@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj¿@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¸hj»@ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjà@h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjâ@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÞ@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M·hjÚ@ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjù@h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjAh]”hŒ v4l2_m2m_ctx”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjAubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jõ@h´M·hjù@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jõ@h´M·hjö@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÚ@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jõ@h´M·hj×@ubjÞ)�”}”(hŒ``struct vb2_queue *q`` queue”h]”(jä)�”}”(hŒ``struct vb2_queue *q``”h]”jê)�”}”(hj8Ah]”hŒstruct vb2_queue *q”…”�”}”(hj:Ah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj6Aubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¹hj2Aubj)�”}”(hhh]”jZ)�”}”(hŒqueue”h]”hŒqueue”…”�”}”(hjQAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¸hjNAubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj2Aubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jMAh´M¹hj×@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj»@ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ1v4l2_m2m_update_stop_streaming_state (C function)”Œ&c.v4l2_m2m_update_stop_streaming_state”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ]void v4l2_m2m_update_stop_streaming_state (struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”hú)�”}”(hŒ\void v4l2_m2m_update_stop_streaming_state(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj’Ah²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjŽAh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¾ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¡Ah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŽAh²hh³j Ah´M¾ubj#)�”}”(hŒ$v4l2_m2m_update_stop_streaming_state”h]”j))�”}”(hŒ$v4l2_m2m_update_stop_streaming_state”h]”hŒ$v4l2_m2m_update_stop_streaming_state”…”�”}”(hj³Ah²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¯Aubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjŽAh²hh³j Ah´M¾ubj1 )�”}”(hŒ3(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_queue *q)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÏAh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjËAubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÜAh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjËAubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjíAh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjêAubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jïAŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jµAsbŒ&c.v4l2_m2m_update_stop_streaming_state”†”asbuh1hhjËAubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj Bh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjËAubj )�”}”(hj h]”hŒ*”…”�”}”(hjBh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjËAubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj(Bh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjËAubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÇAubj7 )�”}”(hŒstruct vb2_queue *q”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjABh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj=Bubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjNBh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj=Bubh)�”}”(hhh]”j))�”}”(hŒ vb2_queue”h]”hŒ vb2_queue”…”�”}”(hj_Bh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj\Bubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jaBŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j BŒ&c.v4l2_m2m_update_stop_streaming_state”†”asbuh1hhj=Bubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj}Bh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj=Bubj )�”}”(hj h]”hŒ*”…”�”}”(hj‹Bh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj=Bubj))�”}”(hjw@h]”hŒq”…”�”}”(hj˜Bh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj=Bubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÇAubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjŽAh²hh³j Ah´M¾ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjŠAh²hh³j Ah´M¾ubah}”(h]”j…Aah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j Ah´M¾hj‡Ah²hubjU)�”}”(hhh]”jZ)�”}”(hŒaupdate the encoding/decoding session state when a stop of streaming of a video queue is requested”h]”hŒaupdate the encoding/decoding session state when a stop of streaming of a video queue is requested”…”�”}”(hjÁBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¾hj¾Bh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj‡Ah²hh³j Ah´M¾ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÙBjzjÙBj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒŸ**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vb2_queue *q`` queue”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjãBh]”hŒ Parameters”…”�”}”(hjåBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjáBubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÂhjÝBubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjCh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjCh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjCubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÁhjüBubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjCh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj%Ch]”hŒ v4l2_m2m_ctx”…”�”}”(hj'Ch²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj#Cubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jCh´MÁhjCubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jCh´MÁhjCubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjüBubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jCh´MÁhjùBubjÞ)�”}”(hŒ``struct vb2_queue *q`` queue”h]”(jä)�”}”(hŒ``struct vb2_queue *q``”h]”jê)�”}”(hjZCh]”hŒstruct vb2_queue *q”…”�”}”(hj\Ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjXCubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÃhjTCubj)�”}”(hhh]”jZ)�”}”(hŒqueue”h]”hŒqueue”…”�”}”(hjsCh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÂhjpCubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjTCubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³joCh´MÃhjùBubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÝBubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_encoder_cmd (C function)”Œc.v4l2_m2m_encoder_cmd”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒgint v4l2_m2m_encoder_cmd (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_encoder_cmd *ec)”h]”hú)�”}”(hŒfint v4l2_m2m_encoder_cmd(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_encoder_cmd *ec)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hj´Ch²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj°Ch²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÈubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÃCh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj°Ch²hh³jÂCh´MÈubj#)�”}”(hŒv4l2_m2m_encoder_cmd”h]”j))�”}”(hŒv4l2_m2m_encoder_cmd”h]”hŒv4l2_m2m_encoder_cmd”…”�”}”(hjÕCh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÑCubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj°Ch²hh³jÂCh´MÈubj1 )�”}”(hŒN(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_encoder_cmd *ec)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjñCh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjíCubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjþCh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjíCubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj Dubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jDŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j×CsbŒc.v4l2_m2m_encoder_cmd”†”asbuh1hhjíCubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj/Dh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjíCubj )�”}”(hj h]”hŒ*”…”�”}”(hj=Dh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjíCubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjJDh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjíCubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjéCubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjcDh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj_Dubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjpDh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj_Dubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj�Dh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj~Dubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jƒDŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j+DŒc.v4l2_m2m_encoder_cmd”†”asbuh1hhj_Dubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŸDh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj_Dubj )�”}”(hj h]”hŒ*”…”�”}”(hj­Dh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj_Dubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjºDh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj_Dubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjéCubj7 )�”}”(hŒstruct v4l2_encoder_cmd *ec”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÓDh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjÏDubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjàDh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÏDubh)�”}”(hhh]”j))�”}”(hŒv4l2_encoder_cmd”h]”hŒv4l2_encoder_cmd”…”�”}”(hjñDh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjîDubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jóDŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j+DŒc.v4l2_m2m_encoder_cmd”†”asbuh1hhjÏDubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÏDubj )�”}”(hj h]”hŒ*”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjÏDubj))�”}”(hŒec”h]”hŒec”…”�”}”(hj*Eh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÏDubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjéCubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj°Ch²hh³jÂCh´MÈubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj¬Ch²hh³jÂCh´MÈubah}”(h]”j§Cah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÂCh´MÈhj©Ch²hubjU)�”}”(hhh]”jZ)�”}”(hŒexecute an encoder command”h]”hŒexecute an encoder command”…”�”}”(hjTEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÈhjQEh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj©Ch²hh³jÂCh´MÈubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjlEjzjlEj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒú**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct v4l2_encoder_cmd *ec`` pointer to the encoder command”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjvEh]”hŒ Parameters”…”�”}”(hjxEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjtEubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÌhjpEubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj•Eh]”hŒstruct file *file”…”�”}”(hj—Eh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj“Eubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÊhj�Eubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj®Eh²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hj¸Eh]”hŒfile”…”�”}”(hjºEh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj¶Eubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³jªEh´MÊhj®Eubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jªEh´MÊhj«Eubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj�Eubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jªEh´MÊhjŒEubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjíEh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjïEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjëEubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MËhjçEubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjFh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjFh]”hŒ v4l2_m2m_ctx”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjFubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jFh´MËhjFubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jFh´MËhjFubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjçEubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jFh´MËhjŒEubjÞ)�”}”(hŒ>``struct v4l2_encoder_cmd *ec`` pointer to the encoder command”h]”(jä)�”}”(hŒ``struct v4l2_encoder_cmd *ec``”h]”jê)�”}”(hjEFh]”hŒstruct v4l2_encoder_cmd *ec”…”�”}”(hjGFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjCFubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÍhj?Fubj)�”}”(hhh]”jZ)�”}”(hŒpointer to the encoder command”h]”hŒpointer to the encoder command”…”�”}”(hj^Fh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÌhj[Fubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj?Fubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jZFh´MÍhjŒEubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjpEubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_decoder_cmd (C function)”Œc.v4l2_m2m_decoder_cmd”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒgint v4l2_m2m_decoder_cmd (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_decoder_cmd *dc)”h]”hú)�”}”(hŒfint v4l2_m2m_decoder_cmd(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_decoder_cmd *dc)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hjŸFh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj›Fh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÒubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj®Fh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj›Fh²hh³j­Fh´MÒubj#)�”}”(hŒv4l2_m2m_decoder_cmd”h]”j))�”}”(hŒv4l2_m2m_decoder_cmd”h]”hŒv4l2_m2m_decoder_cmd”…”�”}”(hjÀFh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¼Fubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj›Fh²hh³j­Fh´MÒubj1 )�”}”(hŒN(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct v4l2_decoder_cmd *dc)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÜFh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjØFubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjéFh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØFubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjúFh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj÷Fubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jüFŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jÂFsbŒc.v4l2_m2m_decoder_cmd”†”asbuh1hhjØFubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØFubj )�”}”(hj h]”hŒ*”…”�”}”(hj(Gh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjØFubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj5Gh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjØFubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔFubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjNGh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjJGubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj[Gh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjJGubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjlGh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjiGubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jnGŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jGŒc.v4l2_m2m_decoder_cmd”†”asbuh1hhjJGubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŠGh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjJGubj )�”}”(hj h]”hŒ*”…”�”}”(hj˜Gh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjJGubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj¥Gh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjJGubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔFubj7 )�”}”(hŒstruct v4l2_decoder_cmd *dc”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¾Gh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjºGubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjËGh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjºGubh)�”}”(hhh]”j))�”}”(hŒv4l2_decoder_cmd”h]”hŒv4l2_decoder_cmd”…”�”}”(hjÜGh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÙGubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÞGŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jGŒc.v4l2_m2m_decoder_cmd”†”asbuh1hhjºGubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjúGh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjºGubj )�”}”(hj h]”hŒ*”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjºGubj))�”}”(hŒdc”h]”hŒdc”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjºGubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔFubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj›Fh²hh³j­Fh´MÒubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj—Fh²hh³j­Fh´MÒubah}”(h]”j’Fah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j­Fh´MÒhj”Fh²hubjU)�”}”(hhh]”jZ)�”}”(hŒexecute a decoder command”h]”hŒexecute a decoder command”…”�”}”(hj?Hh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÒhj``struct v4l2_decoder_cmd *dc`` pointer to the decoder command”h]”(jä)�”}”(hŒ``struct v4l2_decoder_cmd *dc``”h]”jê)�”}”(hj0Ih]”hŒstruct v4l2_decoder_cmd *dc”…”�”}”(hj2Ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj.Iubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M×hj*Iubj)�”}”(hhh]”jZ)�”}”(hŒpointer to the decoder command”h]”hŒpointer to the decoder command”…”�”}”(hjIIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÖhjFIubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj*Iubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jEIh´M×hjwHubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj[Hubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_poll (C function)”Œc.v4l2_m2m_poll”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒh__poll_t v4l2_m2m_poll (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct poll_table_struct *wait)”h]”hú)�”}”(hŒg__poll_t v4l2_m2m_poll(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct poll_table_struct *wait)”h]”(h)�”}”(hhh]”j))�”}”(hŒ__poll_t”h]”hŒ__poll_t”…”�”}”(hj�Ih²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjŠIubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j�IŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œ v4l2_m2m_poll”sbŒc.v4l2_m2m_poll”†”asbuh1hhj†Ih²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÜubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¯Ih²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj†Ih²hh³j®Ih´MÜubj#)�”}”(hŒ v4l2_m2m_poll”h]”j))�”}”(hj«Ih]”hŒ v4l2_m2m_poll”…”�”}”(hjÁIh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj½Iubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj†Ih²hh³j®Ih´MÜubj1 )�”}”(hŒQ(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct poll_table_struct *wait)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÜIh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjØIubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjéIh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØIubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjúIh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj÷Iubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jüIŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j©IŒc.v4l2_m2m_poll”†”asbuh1hhjØIubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjJh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØIubj )�”}”(hj h]”hŒ*”…”�”}”(hj&Jh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjØIubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj3Jh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjØIubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔIubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjLJh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjHJubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjYJh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjHJubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjjJh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjgJubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jlJŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j©IŒc.v4l2_m2m_poll”†”asbuh1hhjHJubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjˆJh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjHJubj )�”}”(hj h]”hŒ*”…”�”}”(hj–Jh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjHJubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj£Jh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjHJubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔIubj7 )�”}”(hŒstruct poll_table_struct *wait”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¼Jh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj¸Jubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÉJh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¸Jubh)�”}”(hhh]”j))�”}”(hŒpoll_table_struct”h]”hŒpoll_table_struct”…”�”}”(hjÚJh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj×Jubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÜJŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j©IŒc.v4l2_m2m_poll”†”asbuh1hhj¸Jubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjøJh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¸Jubj )�”}”(hj h]”hŒ*”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj¸Jubj))�”}”(hŒwait”h]”hŒwait”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¸Jubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÔIubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj†Ih²hh³j®Ih´MÜubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj‚Ih²hh³j®Ih´MÜubah}”(h]”j}Iah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j®Ih´MÜhjIh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ.poll replacement, for destination buffers only”h]”hŒ.poll replacement, for destination buffers only”…”�”}”(hj=Kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÜhj:Kh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjIh²hh³j®Ih´MÜubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjUKjzjUKj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX"**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct poll_table_struct *wait`` pointer to struct :c:type:`poll_table_struct` **Description** Call from the driver's poll() function. Will poll both queues. If a buffer is available to dequeue (with dqbuf) from the source queue, this will indicate that a non-blocking write can be performed, while read will be returned in case of the destination queue.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj_Kh]”hŒ Parameters”…”�”}”(hjaKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj]Kubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MàhjYKubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj~Kh]”hŒstruct file *file”…”�”}”(hj€Kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj|Kubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÞhjxKubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hj—Kh²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hj¡Kh]”hŒfile”…”�”}”(hj£Kh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjŸKubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³j“Kh´MÞhj—Kubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j“Kh´MÞhj”Kubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjxKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j“Kh´MÞhjuKubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjÖKh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjØKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÔKubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MßhjÐKubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjïKh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjùKh]”hŒ v4l2_m2m_ctx”…”�”}”(hjûKh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj÷Kubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jëKh´MßhjïKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jëKh´MßhjìKubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÐKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jëKh´MßhjuKubjÞ)�”}”(hŒQ``struct poll_table_struct *wait`` pointer to struct :c:type:`poll_table_struct` ”h]”(jä)�”}”(hŒ"``struct poll_table_struct *wait``”h]”jê)�”}”(hj.Lh]”hŒstruct poll_table_struct *wait”…”�”}”(hj0Lh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj,Lubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Màhj(Lubj)�”}”(hhh]”jZ)�”}”(hŒ-pointer to struct :c:type:`poll_table_struct`”h]”(hŒpointer to struct ”…”�”}”(hjGLh²hh³Nh´Nubh)�”}”(hŒ:c:type:`poll_table_struct`”h]”jê)�”}”(hjQLh]”hŒpoll_table_struct”…”�”}”(hjSLh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjOLubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œpoll_table_struct”uh1hh³jCLh´MàhjGLubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jCLh´MàhjDLubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj(Lubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jCLh´MàhjuKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjYKubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjˆLh]”hŒ Description”…”�”}”(hjŠLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj†Lubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MâhjYKubjZ)�”}”(hXCall from the driver's poll() function. Will poll both queues. If a buffer is available to dequeue (with dqbuf) from the source queue, this will indicate that a non-blocking write can be performed, while read will be returned in case of the destination queue.”h]”hXCall from the driver’s poll() function. Will poll both queues. If a buffer is available to dequeue (with dqbuf) from the source queue, this will indicate that a non-blocking write can be performed, while read will be returned in case of the destination queue.”…”�”}”(hjžLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MáhjYKubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_mmap (C function)”Œc.v4l2_m2m_mmap”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ_int v4l2_m2m_mmap (struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct vm_area_struct *vma)”h]”hú)�”}”(hŒ^int v4l2_m2m_mmap(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct vm_area_struct *vma)”h]”(jè )�”}”(hŒint”h]”hŒint”…”�”}”(hjÍLh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjÉLh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mëubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÜLh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÉLh²hh³jÛLh´Mëubj#)�”}”(hŒ v4l2_m2m_mmap”h]”j))�”}”(hŒ v4l2_m2m_mmap”h]”hŒ v4l2_m2m_mmap”…”�”}”(hjîLh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjêLubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjÉLh²hh³jÛLh´Mëubj1 )�”}”(hŒM(struct file *file, struct v4l2_m2m_ctx *m2m_ctx, struct vm_area_struct *vma)”h]”(j7 )�”}”(hŒstruct file *file”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj Mh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjMubh)�”}”(hhh]”j))�”}”(hŒfile”h]”hŒfile”…”�”}”(hj(Mh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj%Mubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j*MŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jðLsbŒc.v4l2_m2m_mmap”†”asbuh1hhjMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjHMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjMubj )�”}”(hj h]”hŒ*”…”�”}”(hjVMh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjMubj))�”}”(hŒfile”h]”hŒfile”…”�”}”(hjcMh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjMubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjMubj7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj|Mh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjxMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‰Mh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjxMubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjšMh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj—Mubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jœMŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jDMŒc.v4l2_m2m_mmap”†”asbuh1hhjxMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¸Mh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjxMubj )�”}”(hj h]”hŒ*”…”�”}”(hjÆMh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjxMubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjÓMh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjxMubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjMubj7 )�”}”(hŒstruct vm_area_struct *vma”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjìMh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjèMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjùMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjèMubh)�”}”(hhh]”j))�”}”(hŒvm_area_struct”h]”hŒvm_area_struct”…”�”}”(hj Nh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjNubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j NŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jDMŒc.v4l2_m2m_mmap”†”asbuh1hhjèMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj(Nh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjèMubj )�”}”(hj h]”hŒ*”…”�”}”(hj6Nh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjèMubj))�”}”(hŒvma”h]”hŒvma”…”�”}”(hjCNh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjèMubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjMubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjÉLh²hh³jÛLh´Mëubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjÅLh²hh³jÛLh´Mëubah}”(h]”jÀLah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÛLh´MëhjÂLh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ4source and destination queues-aware mmap multiplexer”h]”hŒ4source and destination queues-aware mmap multiplexer”…”�”}”(hjmNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MëhjjNh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjÂLh²hh³jÛLh´Mëubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj…Njzj…Nj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX£**Parameters** ``struct file *file`` pointer to struct :c:type:`file` ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vm_area_struct *vma`` pointer to struct :c:type:`vm_area_struct` **Description** Call from driver's mmap() function. Will handle mmap() for both queues seamlessly for the video buffer, which will receive normal per-queue offsets and proper vb2 queue pointers. The differentiation is made outside vb2 by adding a predefined offset to buffers from one of the queues and subtracting it before passing it back to vb2. Only drivers (and thus applications) receive modified offsets.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj�Nh]”hŒ Parameters”…”�”}”(hj‘Nh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj�Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mïhj‰NubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ7``struct file *file`` pointer to struct :c:type:`file` ”h]”(jä)�”}”(hŒ``struct file *file``”h]”jê)�”}”(hj®Nh]”hŒstruct file *file”…”�”}”(hj°Nh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¬Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Míhj¨Nubj)�”}”(hhh]”jZ)�”}”(hŒ pointer to struct :c:type:`file`”h]”(hŒpointer to struct ”…”�”}”(hjÇNh²hh³Nh´Nubh)�”}”(hŒ:c:type:`file`”h]”jê)�”}”(hjÑNh]”hŒfile”…”�”}”(hjÓNh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÏNubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œfile”uh1hh³jÃNh´MíhjÇNubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÃNh´MíhjÄNubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj¨Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÃNh´Míhj¥NubjÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjOh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjOubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MîhjOubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjOh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj)Oh]”hŒ v4l2_m2m_ctx”…”�”}”(hj+Oh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj'Oubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jOh´MîhjOubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jOh´MîhjOubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjOubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jOh´Mîhj¥NubjÞ)�”}”(hŒJ``struct vm_area_struct *vma`` pointer to struct :c:type:`vm_area_struct` ”h]”(jä)�”}”(hŒ``struct vm_area_struct *vma``”h]”jê)�”}”(hj^Oh]”hŒstruct vm_area_struct *vma”…”�”}”(hj`Oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj\Oubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MïhjXOubj)�”}”(hhh]”jZ)�”}”(hŒ*pointer to struct :c:type:`vm_area_struct`”h]”(hŒpointer to struct ”…”�”}”(hjwOh²hh³Nh´Nubh)�”}”(hŒ:c:type:`vm_area_struct`”h]”jê)�”}”(hj�Oh]”hŒvm_area_struct”…”�”}”(hjƒOh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjOubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œvm_area_struct”uh1hh³jsOh´MïhjwOubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jsOh´MïhjtOubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjXOubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jsOh´Mïhj¥Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj‰NubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hj¸Oh]”hŒ Description”…”�”}”(hjºOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj¶Oubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mñhj‰NubjZ)�”}”(hX‹Call from driver's mmap() function. Will handle mmap() for both queues seamlessly for the video buffer, which will receive normal per-queue offsets and proper vb2 queue pointers. The differentiation is made outside vb2 by adding a predefined offset to buffers from one of the queues and subtracting it before passing it back to vb2. Only drivers (and thus applications) receive modified offsets.”h]”hX�Call from driver’s mmap() function. Will handle mmap() for both queues seamlessly for the video buffer, which will receive normal per-queue offsets and proper vb2 queue pointers. The differentiation is made outside vb2 by adding a predefined offset to buffers from one of the queues and subtracting it before passing it back to vb2. Only drivers (and thus applications) receive modified offsets.”…”�”}”(hjÎOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mðhj‰Nubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_init (C function)”Œc.v4l2_m2m_init”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒHstruct v4l2_m2m_dev * v4l2_m2m_init (const struct v4l2_m2m_ops *m2m_ops)”h]”hú)�”}”(hŒFstruct v4l2_m2m_dev *v4l2_m2m_init(const struct v4l2_m2m_ops *m2m_ops)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjýOh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjùOh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj Ph²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjùOh²hh³j Ph´Mubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_dev”h]”hŒ v4l2_m2m_dev”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjPubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jPŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œ v4l2_m2m_init”sbŒc.v4l2_m2m_init”†”asbuh1hhjùOh²hh³j Ph´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj=Ph²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjùOh²hh³j Ph´Mubj )�”}”(hj h]”hŒ*”…”�”}”(hjKPh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjùOh²hh³j Ph´Mubj#)�”}”(hŒ v4l2_m2m_init”h]”j))�”}”(hj:Ph]”hŒ v4l2_m2m_init”…”�”}”(hj\Ph²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjXPubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjùOh²hh³j Ph´Mubj1 )�”}”(hŒ$(const struct v4l2_m2m_ops *m2m_ops)”h]”j7 )�”}”(hŒ"const struct v4l2_m2m_ops *m2m_ops”h]”(j)�”}”(hŒconst”h]”hŒconst”…”�”}”(hjwPh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjsPubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj…Ph²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjsPubj)�”}”(hjh]”hŒstruct”…”�”}”(hj“Ph²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjsPubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj Ph²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjsPubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ops”h]”hŒ v4l2_m2m_ops”…”�”}”(hj±Ph²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj®Pubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j³PŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j8PŒc.v4l2_m2m_init”†”asbuh1hhjsPubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÏPh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjsPubj )�”}”(hj h]”hŒ*”…”�”}”(hjÝPh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjsPubj))�”}”(hŒm2m_ops”h]”hŒm2m_ops”…”�”}”(hjêPh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjsPubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjoPubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjùOh²hh³j Ph´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjõOh²hh³j Ph´Mubah}”(h]”jðOah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j Ph´MhjòOh²hubjU)�”}”(hhh]”jZ)�”}”(hŒinitialize per-driver m2m data”h]”hŒinitialize per-driver m2m data”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjQh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjòOh²hh³j Ph´Mubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj,Qjzj,Qj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒî**Parameters** ``const struct v4l2_m2m_ops *m2m_ops`` pointer to struct v4l2_m2m_ops **Description** Usually called from driver's ``probe()`` function. **Return** returns an opaque pointer to the internal data to handle M2M context”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj6Qh]”hŒ Parameters”…”�”}”(hj8Qh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj4Qubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj0QubjÙ)�”}”(hhh]”jÞ)�”}”(hŒF``const struct v4l2_m2m_ops *m2m_ops`` pointer to struct v4l2_m2m_ops ”h]”(jä)�”}”(hŒ&``const struct v4l2_m2m_ops *m2m_ops``”h]”jê)�”}”(hjUQh]”hŒ"const struct v4l2_m2m_ops *m2m_ops”…”�”}”(hjWQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjSQubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjOQubj)�”}”(hhh]”jZ)�”}”(hŒpointer to struct v4l2_m2m_ops”h]”hŒpointer to struct v4l2_m2m_ops”…”�”}”(hjnQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jjQh´MhjkQubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjOQubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jjQh´MhjLQubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj0QubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hj�Qh]”hŒ Description”…”�”}”(hj’Qh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjŽQubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj0QubjZ)�”}”(hŒ2Usually called from driver's ``probe()`` function.”h]”(hŒUsually called from driver’s ”…”�”}”(hj¦Qh²hh³Nh´Nubjê)�”}”(hŒ ``probe()``”h]”hŒprobe()”…”�”}”(hj®Qh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¦QubhŒ function.”…”�”}”(hj¦Qh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj0QubjZ)�”}”(hŒ **Return**”h]”j�)�”}”(hjÉQh]”hŒReturn”…”�”}”(hjËQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÇQubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj0QubjZ)�”}”(hŒDreturns an opaque pointer to the internal data to handle M2M context”h]”hŒDreturns an opaque pointer to the internal data to handle M2M context”…”�”}”(hjßQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj0Qubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_release (C function)”Œc.v4l2_m2m_release”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ4void v4l2_m2m_release (struct v4l2_m2m_dev *m2m_dev)”h]”hú)�”}”(hŒ3void v4l2_m2m_release(struct v4l2_m2m_dev *m2m_dev)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjRh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj Rh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjRh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj Rh²hh³jRh´Mubj#)�”}”(hŒv4l2_m2m_release”h]”j))�”}”(hŒv4l2_m2m_release”h]”hŒv4l2_m2m_release”…”�”}”(hj/Rh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj+Rubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj Rh²hh³jRh´Mubj1 )�”}”(hŒ(struct v4l2_m2m_dev *m2m_dev)”h]”j7 )�”}”(hŒstruct v4l2_m2m_dev *m2m_dev”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjKRh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjGRubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjXRh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjGRubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_dev”h]”hŒ v4l2_m2m_dev”…”�”}”(hjiRh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjfRubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jkRŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j1RsbŒc.v4l2_m2m_release”†”asbuh1hhjGRubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‰Rh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjGRubj )�”}”(hj h]”hŒ*”…”�”}”(hj—Rh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjGRubj))�”}”(hŒm2m_dev”h]”hŒm2m_dev”…”�”}”(hj¤Rh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjGRubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjCRubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj Rh²hh³jRh´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjRh²hh³jRh´Mubah}”(h]”jRah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jRh´MhjRh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ'cleans up and frees a m2m_dev structure”h]”hŒ'cleans up and frees a m2m_dev structure”…”�”}”(hjÎRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjËRh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjRh²hh³jRh´Mubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjæRjzjæRj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ²**Parameters** ``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context **Description** Usually called from driver's ``remove()`` function.”•6h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjðRh]”hŒ Parameters”…”�”}”(hjòRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjîRubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M"hjêRubjÙ)�”}”(hhh]”jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hjSh]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj Subah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M hj Subj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hj(Sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j$Sh´M hj%Subah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj Subeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j$Sh´M hjSubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjêRubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjJSh]”hŒ Description”…”�”}”(hjLSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjHSubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M"hjêRubjZ)�”}”(hŒ3Usually called from driver's ``remove()`` function.”h]”(hŒUsually called from driver’s ”…”�”}”(hj`Sh²hh³Nh´Nubjê)�”}”(hŒ ``remove()``”h]”hŒremove()”…”�”}”(hjhSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj`SubhŒ function.”…”�”}”(hj`Sh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M!hjêRubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_get (C function)”Œc.v4l2_m2m_get”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ0void v4l2_m2m_get (struct v4l2_m2m_dev *m2m_dev)”h]”hú)�”}”(hŒ/void v4l2_m2m_get(struct v4l2_m2m_dev *m2m_dev)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj¡Sh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj�Sh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M'ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj°Sh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�Sh²hh³j¯Sh´M'ubj#)�”}”(hŒ v4l2_m2m_get”h]”j))�”}”(hŒ v4l2_m2m_get”h]”hŒ v4l2_m2m_get”…”�”}”(hjÂSh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¾Subah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj�Sh²hh³j¯Sh´M'ubj1 )�”}”(hŒ(struct v4l2_m2m_dev *m2m_dev)”h]”j7 )�”}”(hŒstruct v4l2_m2m_dev *m2m_dev”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÞSh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjÚSubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjëSh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÚSubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_dev”h]”hŒ v4l2_m2m_dev”…”�”}”(hjüSh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjùSubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jþSŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jÄSsbŒc.v4l2_m2m_get”†”asbuh1hhjÚSubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÚSubj )�”}”(hj h]”hŒ*”…”�”}”(hj*Th²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjÚSubj))�”}”(hŒm2m_dev”h]”hŒm2m_dev”…”�”}”(hj7Th²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÚSubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÖSubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj�Sh²hh³j¯Sh´M'ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj™Sh²hh³j¯Sh´M'ubah}”(h]”j”Sah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j¯Sh´M'hj–Sh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ)take a reference to the m2m_dev structure”h]”hŒ)take a reference to the m2m_dev structure”…”�”}”(hjaTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M'hj^Th²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj–Sh²hh³j¯Sh´M'ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjyTjzjyTj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX**Parameters** ``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context **Description** This is used to share the M2M device across multiple devices. This can be used to avoid scheduling two hardware nodes concurrently.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjƒTh]”hŒ Parameters”…”�”}”(hj…Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj�Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M+hj}TubjÙ)�”}”(hhh]”jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hj¢Th]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hj¤Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M)hjœTubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hj»Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j·Th´M)hj¸Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjœTubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j·Th´M)hj™Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj}TubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjÝTh]”hŒ Description”…”�”}”(hjßTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÛTubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M+hj}TubjZ)�”}”(hŒƒThis is used to share the M2M device across multiple devices. This can be used to avoid scheduling two hardware nodes concurrently.”h]”hŒƒThis is used to share the M2M device across multiple devices. This can be used to avoid scheduling two hardware nodes concurrently.”…”�”}”(hjóTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M*hj}Tubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_put (C function)”Œc.v4l2_m2m_put”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ0void v4l2_m2m_put (struct v4l2_m2m_dev *m2m_dev)”h]”hú)�”}”(hŒ/void v4l2_m2m_put(struct v4l2_m2m_dev *m2m_dev)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj"Uh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjUh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M1ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj1Uh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjUh²hh³j0Uh´M1ubj#)�”}”(hŒ v4l2_m2m_put”h]”j))�”}”(hŒ v4l2_m2m_put”h]”hŒ v4l2_m2m_put”…”�”}”(hjCUh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj?Uubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjUh²hh³j0Uh´M1ubj1 )�”}”(hŒ(struct v4l2_m2m_dev *m2m_dev)”h]”j7 )�”}”(hŒstruct v4l2_m2m_dev *m2m_dev”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj_Uh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj[Uubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjlUh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj[Uubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_dev”h]”hŒ v4l2_m2m_dev”…”�”}”(hj}Uh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjzUubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jUŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jEUsbŒc.v4l2_m2m_put”†”asbuh1hhj[Uubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�Uh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj[Uubj )�”}”(hj h]”hŒ*”…”�”}”(hj«Uh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj[Uubj))�”}”(hŒm2m_dev”h]”hŒm2m_dev”…”�”}”(hj¸Uh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj[Uubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjWUubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjUh²hh³j0Uh´M1ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjUh²hh³j0Uh´M1ubah}”(h]”jUah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j0Uh´M1hjUh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ+remove a reference to the m2m_dev structure”h]”hŒ+remove a reference to the m2m_dev structure”…”�”}”(hjâUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M1hjßUh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjUh²hh³j0Uh´M1ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjúUjzjúUj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hXD**Parameters** ``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context **Description** Once the M2M device has no more references, v4l2_m2m_release() will be called automatically. Users of this method should never call v4l2_m2m_release() directly. See v4l2_m2m_get() for more details.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjVh]”hŒ Parameters”…”�”}”(hjVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjVubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M5hjþUubjÙ)�”}”(hhh]”jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hj#Vh]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hj%Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj!Vubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M3hjVubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjËWubj )�”}”(hj h]”hŒ*”…”�”}”(hjLYh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjËWubj))�”}”(hŒdst_vq”h]”hŒdst_vq”…”�”}”(hjYYh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjËWubj )�”}”(hjXh]”hŒ)”…”�”}”(hjgYh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjËWubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjWubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjŸVh²hh³j°Vh´M<ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj›Vh²hh³j°Vh´M<ubah}”(h]”j–Vah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j°Vh´M<hj˜Vh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ%allocate and initialize a m2m context”h]”hŒ%allocate and initialize a m2m context”…”�”}”(hj�Yh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M<hj�Yh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj˜Vh²hh³j°Vh´M<ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj¨Yjzj¨Yj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX¢**Parameters** ``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ``void *drv_priv`` driver's instance private data ``int (*queue_init)(void *priv, struct vb2_queue *src_vq, struct vb2_queue *dst_vq)`` a callback for queue type-specific initialization function to be used for initializing vb2_queues **Description** Usually called from driver's ``open()`` function.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj²Yh]”hŒ Parameters”…”�”}”(hj´Yh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj°Yubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M@hj¬YubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ[``struct v4l2_m2m_dev *m2m_dev`` opaque pointer to the internal data to handle M2M context ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_dev *m2m_dev``”h]”jê)�”}”(hjÑYh]”hŒstruct v4l2_m2m_dev *m2m_dev”…”�”}”(hjÓYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÏYubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M>hjËYubj)�”}”(hhh]”jZ)�”}”(hŒ9opaque pointer to the internal data to handle M2M context”h]”hŒ9opaque pointer to the internal data to handle M2M context”…”�”}”(hjêYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jæYh´M>hjçYubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjËYubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jæYh´M>hjÈYubjÞ)�”}”(hŒ2``void *drv_priv`` driver's instance private data ”h]”(jä)�”}”(hŒ``void *drv_priv``”h]”jê)�”}”(hj Zh]”hŒvoid *drv_priv”…”�”}”(hj Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjZubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M?hjZubj)�”}”(hhh]”jZ)�”}”(hŒdriver's instance private data”h]”hŒ driver’s instance private data”…”�”}”(hj#Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jZh´M?hj Zubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjZubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jZh´M?hjÈYubjÞ)�”}”(hŒ¸``int (*queue_init)(void *priv, struct vb2_queue *src_vq, struct vb2_queue *dst_vq)`` a callback for queue type-specific initialization function to be used for initializing vb2_queues ”h]”(jä)�”}”(hŒU``int (*queue_init)(void *priv, struct vb2_queue *src_vq, struct vb2_queue *dst_vq)``”h]”jê)�”}”(hjCZh]”hŒQint (*queue_init)(void *priv, struct vb2_queue *src_vq, struct vb2_queue *dst_vq)”…”�”}”(hjEZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjAZubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MAhj=Zubj)�”}”(hhh]”jZ)�”}”(hŒaa callback for queue type-specific initialization function to be used for initializing vb2_queues”h]”hŒaa callback for queue type-specific initialization function to be used for initializing vb2_queues”…”�”}”(hj\Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M@hjYZubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj=Zubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jXZh´MAhjÈYubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj¬YubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjZh]”hŒ Description”…”�”}”(hj�Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj}Zubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MChj¬YubjZ)�”}”(hŒ1Usually called from driver's ``open()`` function.”h]”(hŒUsually called from driver’s ”…”�”}”(hj•Zh²hh³Nh´Nubjê)�”}”(hŒ ``open()``”h]”hŒopen()”…”�”}”(hj�Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj•ZubhŒ function.”…”�”}”(hj•Zh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MBhj¬Yubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ!v4l2_m2m_ctx_release (C function)”Œc.v4l2_m2m_ctx_release”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ8void v4l2_m2m_ctx_release (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒ7void v4l2_m2m_ctx_release(struct v4l2_m2m_ctx *m2m_ctx)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjÖZh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjÒZh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MVubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjåZh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÒZh²hh³jäZh´MVubj#)�”}”(hŒv4l2_m2m_ctx_release”h]”j))�”}”(hŒv4l2_m2m_ctx_release”h]”hŒv4l2_m2m_ctx_release”…”�”}”(hj÷Zh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjóZubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjÒZh²hh³jäZh´MVubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj[ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj [h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj[ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj1[h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj.[ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j3[Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jùZsbŒc.v4l2_m2m_ctx_release”†”asbuh1hhj[ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjQ[h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj[ubj )�”}”(hj h]”hŒ*”…”�”}”(hj_[h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj[ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjl[h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj[ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj [ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjÒZh²hh³jäZh´MVubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjÎZh²hh³jäZh´MVubah}”(h]”jÉZah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jäZh´MVhjËZh²hubjU)�”}”(hhh]”jZ)�”}”(hŒrelease m2m context”h]”hŒrelease m2m context”…”�”}”(hj–[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MVhj“[h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjËZh²hh³jäZh´MVubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj®[jzj®[j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒÁ**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` **Description** Usually called from driver's release() function.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj¸[h]”hŒ Parameters”…”�”}”(hjº[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj¶[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MZhj²[ubjÙ)�”}”(hhh]”jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj×[h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjÙ[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÕ[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MXhjÑ[ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjð[h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjú[h]”hŒ v4l2_m2m_ctx”…”�”}”(hjü[h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjø[ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jì[h´MXhjð[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jì[h´MXhjí[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÑ[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jì[h´MXhjÎ[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj²[ubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hj1\h]”hŒ Description”…”�”}”(hj3\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj/\ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MZhj²[ubjZ)�”}”(hŒ0Usually called from driver's release() function.”h]”hŒ2Usually called from driver’s release() function.”…”�”}”(hjG\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MYhj²[ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_buf_queue (C function)”Œc.v4l2_m2m_buf_queue”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒTvoid v4l2_m2m_buf_queue (struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”hú)�”}”(hŒSvoid v4l2_m2m_buf_queue(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjv\h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjr\h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M_ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj…\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjr\h²hh³j„\h´M_ubj#)�”}”(hŒv4l2_m2m_buf_queue”h]”j))�”}”(hŒv4l2_m2m_buf_queue”h]”hŒv4l2_m2m_buf_queue”…”�”}”(hj—\h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj“\ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjr\h²hh³j„\h´M_ubj1 )�”}”(hŒ<(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj³\h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj¯\ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÀ\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¯\ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjÑ\h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÎ\ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÓ\Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j™\sbŒc.v4l2_m2m_buf_queue”†”asbuh1hhj¯\ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjñ\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¯\ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÿ\h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj¯\ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj ]h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¯\ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj«\ubj7 )�”}”(hŒstruct vb2_v4l2_buffer *vbuf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj%]h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj!]ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj2]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj!]ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjC]h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj@]ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jE]Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jí\Œc.v4l2_m2m_buf_queue”†”asbuh1hhj!]ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hja]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj!]ubj )�”}”(hj h]”hŒ*”…”�”}”(hjo]h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj!]ubj))�”}”(hŒvbuf”h]”hŒvbuf”…”�”}”(hj|]h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj!]ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj«\ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjr\h²hh³j„\h´M_ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjn\h²hh³j„\h´M_ubah}”(h]”ji\ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j„\h´M_hjk\h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ.add a buffer to the proper ready buffers list.”h]”hŒ.add a buffer to the proper ready buffers list.”…”�”}”(hj¦]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M_hj£]h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjk\h²hh³j„\h´M_ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj¾]jzj¾]j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX!**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vb2_v4l2_buffer *vbuf`` pointer to struct :c:type:`vb2_v4l2_buffer` **Description** Call from vb2_queue_ops->ops->buf_queue, vb2_queue_ops callback.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÈ]h]”hŒ Parameters”…”�”}”(hjÊ]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÆ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MchjÂ]ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjç]h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjé]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjå]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mahjá]ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj^h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj ^h]”hŒ v4l2_m2m_ctx”…”�”}”(hj ^h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj^ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jü]h´Mahj^ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jü]h´Mahjý]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjá]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jü]h´MahjÞ]ubjÞ)�”}”(hŒM``struct vb2_v4l2_buffer *vbuf`` pointer to struct :c:type:`vb2_v4l2_buffer` ”h]”(jä)�”}”(hŒ ``struct vb2_v4l2_buffer *vbuf``”h]”jê)�”}”(hj?^h]”hŒstruct vb2_v4l2_buffer *vbuf”…”�”}”(hjA^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj=^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mbhj9^ubj)�”}”(hhh]”jZ)�”}”(hŒ+pointer to struct :c:type:`vb2_v4l2_buffer`”h]”(hŒpointer to struct ”…”�”}”(hjX^h²hh³Nh´Nubh)�”}”(hŒ:c:type:`vb2_v4l2_buffer`”h]”jê)�”}”(hjb^h]”hŒvb2_v4l2_buffer”…”�”}”(hjd^h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj`^ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œvb2_v4l2_buffer”uh1hh³jT^h´MbhjX^ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jT^h´MbhjU^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj9^ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jT^h´MbhjÞ]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÂ]ubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hj™^h]”hŒ Description”…”�”}”(hj›^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj—^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MdhjÂ]ubjZ)�”}”(hŒ@Call from vb2_queue_ops->ops->buf_queue, vb2_queue_ops callback.”h]”hŒ@Call from vb2_queue_ops->ops->buf_queue, vb2_queue_ops callback.”…”�”}”(hj¯^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MchjÂ]ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ(v4l2_m2m_num_src_bufs_ready (C function)”Œc.v4l2_m2m_num_src_bufs_ready”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒGunsigned int v4l2_m2m_num_src_bufs_ready (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒFunsigned int v4l2_m2m_num_src_bufs_ready(struct v4l2_m2m_ctx *m2m_ctx)”h]”(jè )�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjÞ^h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjÚ^h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjí^h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÚ^h²hh³jì^h´Mjubjè )�”}”(hŒint”h]”hŒint”…”�”}”(hjû^h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjÚ^h²hh³jì^h´Mjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj _h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÚ^h²hh³jì^h´Mjubj#)�”}”(hŒv4l2_m2m_num_src_bufs_ready”h]”j))�”}”(hŒv4l2_m2m_num_src_bufs_ready”h]”hŒv4l2_m2m_num_src_bufs_ready”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj_ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjÚ^h²hh³jì^h´Mjubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj7_h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj3_ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjD_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj3_ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjU_h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjR_ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jW_Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j_sbŒc.v4l2_m2m_num_src_bufs_ready”†”asbuh1hhj3_ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hju_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj3_ubj )�”}”(hj h]”hŒ*”…”�”}”(hjƒ_h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj3_ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj�_h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj3_ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj/_ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjÚ^h²hh³jì^h´Mjubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjÖ^h²hh³jì^h´Mjubah}”(h]”jÑ^ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jì^h´MjhjÓ^h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ1return the number of source buffers ready for use”h]”hŒ1return the number of source buffers ready for use”…”�”}”(hjº_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mjhj·_h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjÓ^h²hh³jì^h´Mjubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÒ_jzjÒ_j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÜ_h]”hŒ Parameters”…”�”}”(hjÞ_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÚ_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MnhjÖ_ubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjû_h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjý_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjù_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mphjõ_ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj`h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj`h]”hŒ v4l2_m2m_ctx”…”�”}”(hj `h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj`ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mmhj`ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j;`h´Mmhj`ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjõ_ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j`h´Mphjò_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÖ_ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ(v4l2_m2m_num_dst_bufs_ready (C function)”Œc.v4l2_m2m_num_dst_bufs_ready”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒGunsigned int v4l2_m2m_num_dst_bufs_ready (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒFunsigned int v4l2_m2m_num_dst_bufs_ready(struct v4l2_m2m_ctx *m2m_ctx)”h]”(jè )�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjt`h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjp`h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M}ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjƒ`h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjp`h²hh³j‚`h´M}ubjè )�”}”(hŒint”h]”hŒint”…”�”}”(hj‘`h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjp`h²hh³j‚`h´M}ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŸ`h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjp`h²hh³j‚`h´M}ubj#)�”}”(hŒv4l2_m2m_num_dst_bufs_ready”h]”j))�”}”(hŒv4l2_m2m_num_dst_bufs_ready”h]”hŒv4l2_m2m_num_dst_bufs_ready”…”�”}”(hj±`h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj­`ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjp`h²hh³j‚`h´M}ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÍ`h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjÉ`ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÚ`h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÉ`ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjë`h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjè`ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jí`Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j³`sbŒc.v4l2_m2m_num_dst_bufs_ready”†”asbuh1hhjÉ`ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj ah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÉ`ubj )�”}”(hj h]”hŒ*”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjÉ`ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj&ah²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÉ`ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÅ`ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjp`h²hh³j‚`h´M}ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjl`h²hh³j‚`h´M}ubah}”(h]”jg`ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j‚`h´M}hji`h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ6return the number of destination buffers ready for use”h]”hŒ6return the number of destination buffers ready for use”…”�”}”(hjPah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M}hjMah²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThji`h²hh³j‚`h´M}ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjhajzjhaj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjrah]”hŒ Parameters”…”�”}”(hjtah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjpaubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M�hjlaubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj‘ah]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj“ah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj�aubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mƒhj‹aubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjªah²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj´ah]”hŒ v4l2_m2m_ctx”…”�”}”(hj¶ah²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj²aubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M€hjªaubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÑah´M€hj§aubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj‹aubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j¦ah´Mƒhjˆaubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjlaubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_next_buf (C function)”Œc.v4l2_m2m_next_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_next_buf (struct v4l2_m2m_queue_ctx *q_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_next_buf(struct v4l2_m2m_queue_ctx *q_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj bh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjbh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjbh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjbh²hh³jbh´M�ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj)bh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj&bubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j+bŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_next_buf”sbŒc.v4l2_m2m_next_buf”†”asbuh1hhjbh²hh³jbh´M�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjJbh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjbh²hh³jbh´M�ubj )�”}”(hj h]”hŒ*”…”�”}”(hjXbh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjbh²hh³jbh´M�ubj#)�”}”(hŒv4l2_m2m_next_buf”h]”j))�”}”(hjGbh]”hŒv4l2_m2m_next_buf”…”�”}”(hjibh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjebubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjbh²hh³jbh´M�ubj1 )�”}”(hŒ"(struct v4l2_m2m_queue_ctx *q_ctx)”h]”j7 )�”}”(hŒ struct v4l2_m2m_queue_ctx *q_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj„bh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj€bubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‘bh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj€bubh)�”}”(hhh]”j))�”}”(hŒv4l2_m2m_queue_ctx”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hj¢bh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjŸbubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j¤bŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jEbŒc.v4l2_m2m_next_buf”†”asbuh1hhj€bubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÀbh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj€bubj )�”}”(hj h]”hŒ*”…”�”}”(hjÎbh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj€bubj))�”}”(hŒq_ctx”h]”hŒq_ctx”…”�”}”(hjÛbh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj€bubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj|bubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjbh²hh³jbh´M�ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjbh²hh³jbh´M�ubah}”(h]”jýaah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jbh´M�hjÿah²hubjU)�”}”(hhh]”jZ)�”}”(hŒ1return next buffer from the list of ready buffers”h]”hŒ1return next buffer from the list of ready buffers”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M�hjch²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjÿah²hh³jbh´M�ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjcjzjcj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ_**Parameters** ``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj'ch]”hŒ Parameters”…”�”}”(hj)ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj%cubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M”hj!cubjÙ)�”}”(hhh]”jÞ)�”}”(hŒM``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jä)�”}”(hŒ$``struct v4l2_m2m_queue_ctx *q_ctx``”h]”jê)�”}”(hjFch]”hŒ struct v4l2_m2m_queue_ctx *q_ctx”…”�”}”(hjHch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjDcubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M–hj@cubj)�”}”(hhh]”jZ)�”}”(hŒ(pointer to struct **v4l2_m2m_queue_ctx**”h]”(hŒpointer to struct ”…”�”}”(hj_ch²hh³Nh´Nubj�)�”}”(hŒ**v4l2_m2m_queue_ctx**”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hjgch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj_cubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M’hj\cubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj@cubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j[ch´M–hj=cubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj!cubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ"v4l2_m2m_next_src_buf (C function)”Œc.v4l2_m2m_next_src_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_next_src_buf (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_next_src_buf(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj®ch²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjªch²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M—ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¼ch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjªch²hh³j»ch´M—ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjÍch²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÊcubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÏcŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_next_src_buf”sbŒc.v4l2_m2m_next_src_buf”†”asbuh1hhjªch²hh³j»ch´M—ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjîch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjªch²hh³j»ch´M—ubj )�”}”(hj h]”hŒ*”…”�”}”(hjüch²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjªch²hh³j»ch´M—ubj#)�”}”(hŒv4l2_m2m_next_src_buf”h]”j))�”}”(hjëch]”hŒv4l2_m2m_next_src_buf”…”�”}”(hj dh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj dubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjªch²hh³j»ch´M—ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj(dh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj$dubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj5dh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj$dubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjFdh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjCdubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jHdŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jécŒc.v4l2_m2m_next_src_buf”†”asbuh1hhj$dubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjddh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj$dubj )�”}”(hj h]”hŒ*”…”�”}”(hjrdh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj$dubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj$dubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj dubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjªch²hh³j»ch´M—ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj¦ch²hh³j»ch´M—ubah}”(h]”j¡cah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j»ch´M—hj£ch²hubjU)�”}”(hhh]”jZ)�”}”(hŒ8return next source buffer from the list of ready buffers”h]”hŒ8return next source buffer from the list of ready buffers”…”�”}”(hj©dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M—hj¦dh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj£ch²hh³j»ch´M—ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÁdjzjÁdj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjËdh]”hŒ Parameters”…”�”}”(hjÍdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÉdubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M›hjÅdubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjêdh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjìdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjèdubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M�hjädubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjeh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj eh]”hŒ v4l2_m2m_ctx”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj eubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mšhjeubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j*eh´Mšhjeubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjädubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÿdh´M�hjádubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÅdubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ"v4l2_m2m_next_dst_buf (C function)”Œc.v4l2_m2m_next_dst_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_next_dst_buf (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_next_dst_buf(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjceh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj_eh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M£ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjqeh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj_eh²hh³jpeh´M£ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj‚eh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjeubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j„eŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_next_dst_buf”sbŒc.v4l2_m2m_next_dst_buf”†”asbuh1hhj_eh²hh³jpeh´M£ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj£eh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj_eh²hh³jpeh´M£ubj )�”}”(hj h]”hŒ*”…”�”}”(hj±eh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj_eh²hh³jpeh´M£ubj#)�”}”(hŒv4l2_m2m_next_dst_buf”h]”j))�”}”(hj eh]”hŒv4l2_m2m_next_dst_buf”…”�”}”(hjÂeh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¾eubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj_eh²hh³jpeh´M£ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÝeh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjÙeubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjêeh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÙeubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjûeh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjøeubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jýeŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jžeŒc.v4l2_m2m_next_dst_buf”†”asbuh1hhjÙeubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÙeubj )�”}”(hj h]”hŒ*”…”�”}”(hj'fh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjÙeubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj4fh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÙeubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjÕeubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj_eh²hh³jpeh´M£ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj[eh²hh³jpeh´M£ubah}”(h]”jVeah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jpeh´M£hjXeh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ=return next destination buffer from the list of ready buffers”h]”hŒ=return next destination buffer from the list of ready buffers”…”�”}”(hj^fh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M£hj[fh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjXeh²hh³jpeh´M£ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjvfjzjvfj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj€fh]”hŒ Parameters”…”�”}”(hj‚fh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj~fubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M§hjzfubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjŸfh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj¡fh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj�fubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M©hj™fubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj¸fh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÂfh]”hŒ v4l2_m2m_ctx”…”�”}”(hjÄfh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÀfubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¦hj¸fubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jßfh´M¦hjµfubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj™fubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j´fh´M©hj–fubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjzfubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒv4l2_m2m_last_buf (C function)”Œc.v4l2_m2m_last_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_last_buf (struct v4l2_m2m_queue_ctx *q_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_last_buf(struct v4l2_m2m_queue_ctx *q_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjgh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¯ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&gh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjgh²hh³j%gh´M¯ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj7gh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj4gubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j9gŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_last_buf”sbŒc.v4l2_m2m_last_buf”†”asbuh1hhjgh²hh³j%gh´M¯ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjXgh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjgh²hh³j%gh´M¯ubj )�”}”(hj h]”hŒ*”…”�”}”(hjfgh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjgh²hh³j%gh´M¯ubj#)�”}”(hŒv4l2_m2m_last_buf”h]”j))�”}”(hjUgh]”hŒv4l2_m2m_last_buf”…”�”}”(hjwgh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjsgubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjgh²hh³j%gh´M¯ubj1 )�”}”(hŒ"(struct v4l2_m2m_queue_ctx *q_ctx)”h]”j7 )�”}”(hŒ struct v4l2_m2m_queue_ctx *q_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj’gh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjŽgubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŸgh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŽgubh)�”}”(hhh]”j))�”}”(hŒv4l2_m2m_queue_ctx”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hj°gh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj­gubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j²gŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jSgŒc.v4l2_m2m_last_buf”†”asbuh1hhjŽgubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÎgh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŽgubj )�”}”(hj h]”hŒ*”…”�”}”(hjÜgh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjŽgubj))�”}”(hŒq_ctx”h]”hŒq_ctx”…”�”}”(hjégh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjŽgubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjŠgubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjgh²hh³j%gh´M¯ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjgh²hh³j%gh´M¯ubah}”(h]”j gah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j%gh´M¯hj gh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ1return last buffer from the list of ready buffers”h]”hŒ1return last buffer from the list of ready buffers”…”�”}”(hjhh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¯hjhh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj gh²hh³j%gh´M¯ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj+hjzj+hj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ_**Parameters** ``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj5hh]”hŒ Parameters”…”�”}”(hj7hh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj3hubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M³hj/hubjÙ)�”}”(hhh]”jÞ)�”}”(hŒM``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jä)�”}”(hŒ$``struct v4l2_m2m_queue_ctx *q_ctx``”h]”jê)�”}”(hjThh]”hŒ struct v4l2_m2m_queue_ctx *q_ctx”…”�”}”(hjVhh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjRhubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MµhjNhubj)�”}”(hhh]”jZ)�”}”(hŒ(pointer to struct **v4l2_m2m_queue_ctx**”h]”(hŒpointer to struct ”…”�”}”(hjmhh²hh³Nh´Nubj�)�”}”(hŒ**v4l2_m2m_queue_ctx**”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hjuhh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjmhubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M±hjjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjNhubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jihh´MµhjKhubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj/hubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ"v4l2_m2m_last_src_buf (C function)”Œc.v4l2_m2m_last_src_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_last_src_buf (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_last_src_buf(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¼hh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj¸hh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”•h´M¶ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÊhh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¸hh²hh³jÉhh´M¶ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjÛhh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjØhubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÝhŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_last_src_buf”sbŒc.v4l2_m2m_last_src_buf”†”asbuh1hhj¸hh²hh³jÉhh´M¶ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjühh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¸hh²hh³jÉhh´M¶ubj )�”}”(hj h]”hŒ*”…”�”}”(hj ih²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj¸hh²hh³jÉhh´M¶ubj#)�”}”(hŒv4l2_m2m_last_src_buf”h]”j))�”}”(hjùhh]”hŒv4l2_m2m_last_src_buf”…”�”}”(hjih²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjiubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj¸hh²hh³jÉhh´M¶ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj6ih²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj2iubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjCih²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj2iubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjTih²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjQiubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jViŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j÷hŒc.v4l2_m2m_last_src_buf”†”asbuh1hhj2iubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjrih²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj2iubj )�”}”(hj h]”hŒ*”…”�”}”(hj€ih²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj2iubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj�ih²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj2iubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj.iubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj¸hh²hh³jÉhh´M¶ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj´hh²hh³jÉhh´M¶ubah}”(h]”j¯hah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÉhh´M¶hj±hh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ8return last source buffer from the list of ready buffers”h]”hŒ8return last source buffer from the list of ready buffers”…”�”}”(hj·ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¶hj´ih²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj±hh²hh³jÉhh´M¶ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÏijzjÏij{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÙih]”hŒ Parameters”…”�”}”(hjÛih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj×iubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MºhjÓiubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjøih]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjúih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjöiubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¼hjòiubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjjh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjjh]”hŒ v4l2_m2m_ctx”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M¹hjjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j8jh´M¹hjjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjòiubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j jh´M¼hjïiubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÓiubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ"v4l2_m2m_last_dst_buf (C function)”Œc.v4l2_m2m_last_dst_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒMstruct vb2_v4l2_buffer * v4l2_m2m_last_dst_buf (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒKstruct vb2_v4l2_buffer *v4l2_m2m_last_dst_buf(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjqjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjmjh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÂubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjmjh²hh³j~jh´MÂubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj�jh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj�jubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j’jŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_last_dst_buf”sbŒc.v4l2_m2m_last_dst_buf”†”asbuh1hhjmjh²hh³j~jh´MÂubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj±jh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjmjh²hh³j~jh´MÂubj )�”}”(hj h]”hŒ*”…”�”}”(hj¿jh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjmjh²hh³j~jh´MÂubj#)�”}”(hŒv4l2_m2m_last_dst_buf”h]”j))�”}”(hj®jh]”hŒv4l2_m2m_last_dst_buf”…”�”}”(hjÐjh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÌjubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjmjh²hh³j~jh´MÂubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjëjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjçjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjøjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjçjubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj kh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjkubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j kŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j¬jŒc.v4l2_m2m_last_dst_buf”†”asbuh1hhjçjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj'kh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjçjubj )�”}”(hj h]”hŒ*”…”�”}”(hj5kh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjçjubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjBkh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjçjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjãjubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjmjh²hh³j~jh´MÂubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjijh²hh³j~jh´MÂubah}”(h]”jdjah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j~jh´MÂhjfjh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ=return last destination buffer from the list of ready buffers”h]”hŒ=return last destination buffer from the list of ready buffers”…”�”}”(hjlkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÂhjikh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjfjh²hh³j~jh´MÂubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj„kjzj„kj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjŽkh]”hŒ Parameters”…”�”}”(hj�kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjŒkubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÆhjˆkubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj­kh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj¯kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj«kubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÈhj§kubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjÆkh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÐkh]”hŒ v4l2_m2m_ctx”…”�”}”(hjÒkh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÎkubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÅhjÆkubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jíkh´MÅhjÃkubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj§kubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÂkh´MÈhj¤kubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjˆkubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ#v4l2_m2m_for_each_dst_buf (C macro)”Œc.v4l2_m2m_for_each_dst_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_for_each_dst_buf”h]”hú)�”}”(hŒv4l2_m2m_for_each_dst_buf”h]”j#)�”}”(hŒv4l2_m2m_for_each_dst_buf”h]”j))�”}”(hj lh]”hŒv4l2_m2m_for_each_dst_buf”…”�”}”(hj*lh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj&lubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj"lh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÎubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjlh²hh³j=lh´MÎubah}”(h]”jlah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j=lh´MÎhjlh²hubjU)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jThjlh²hh³j=lh´MÎubeh}”(h]”h ]”(jsŒmacro”eh"]”h$]”h&]”jxjsjyjVljzjVlj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´NubjZ)�”}”(hŒ*``v4l2_m2m_for_each_dst_buf (m2m_ctx, b)``”h]”jê)�”}”(hj\lh]”hŒ&v4l2_m2m_for_each_dst_buf (m2m_ctx, b)”…”�”}”(hj^lh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjZlubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÐhhÊh²hubj…)�”}”(hŒ1iterate over a list of destination ready buffers ”h]”jZ)�”}”(hŒ0iterate over a list of destination ready buffers”h]”hŒ0iterate over a list of destination ready buffers”…”�”}”(hjvlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÎhjrlubah}”(h]”h ]”h"]”h$]”h&]”uh1j„h³j„lh´MÎhhÊh²hubj)�”}”(hŒ **Parameters** ``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``b`` current buffer of type struct v4l2_m2m_buffer”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj‘lh]”hŒ Parameters”…”�”}”(hj“lh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj�lubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÒhj‹lubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒX``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``m2m_ctx``”h]”jê)�”}”(hj°lh]”hŒm2m_ctx”…”�”}”(hj²lh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj®lubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÑhjªlubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjÉlh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÓlh]”hŒ v4l2_m2m_ctx”…”�”}”(hjÕlh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÑlubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jÅlh´MÑhjÉlubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÅlh´MÑhjÆlubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjªlubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÅlh´MÑhj§lubjÞ)�”}”(hŒ3``b`` current buffer of type struct v4l2_m2m_buffer”h]”(jä)�”}”(hŒ``b``”h]”jê)�”}”(hjmh]”hŒb”…”�”}”(hj mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjmubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÓhjmubj)�”}”(hhh]”jZ)�”}”(hŒ-current buffer of type struct v4l2_m2m_buffer”h]”hŒ-current buffer of type struct v4l2_m2m_buffer”…”�”}”(hj!mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÒhjmubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjmubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jmh´MÓhj§lubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj‹lubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ#v4l2_m2m_for_each_src_buf (C macro)”Œc.v4l2_m2m_for_each_src_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_for_each_src_buf”h]”hú)�”}”(hŒv4l2_m2m_for_each_src_buf”h]”j#)�”}”(hŒv4l2_m2m_for_each_src_buf”h]”j))�”}”(hj\mh]”hŒv4l2_m2m_for_each_src_buf”…”�”}”(hjfmh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjbmubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj^mh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MØubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjZmh²hh³jymh´MØubah}”(h]”jUmah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jymh´MØhjWmh²hubjU)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jThjWmh²hh³jymh´MØubeh}”(h]”h ]”(jsŒmacro”eh"]”h$]”h&]”jxjsjyj’mjzj’mj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´NubjZ)�”}”(hŒ*``v4l2_m2m_for_each_src_buf (m2m_ctx, b)``”h]”jê)�”}”(hj˜mh]”hŒ&v4l2_m2m_for_each_src_buf (m2m_ctx, b)”…”�”}”(hjšmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj–mubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÚhhÊh²hubj…)�”}”(hŒ,iterate over a list of source ready buffers ”h]”jZ)�”}”(hŒ+iterate over a list of source ready buffers”h]”hŒ+iterate over a list of source ready buffers”…”�”}”(hj²mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MØhj®mubah}”(h]”h ]”h"]”h$]”h&]”uh1j„h³jÀmh´MØhhÊh²hubj)�”}”(hŒ **Parameters** ``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``b`` current buffer of type struct v4l2_m2m_buffer”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÍmh]”hŒ Parameters”…”�”}”(hjÏmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjËmubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÜhjÇmubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒX``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``m2m_ctx``”h]”jê)�”}”(hjìmh]”hŒm2m_ctx”…”�”}”(hjîmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjêmubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÚhjæmubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjnh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjnh]”hŒ v4l2_m2m_ctx”…”�”}”(hjnh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj nubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³jnh´MÚhjnubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jnh´MÚhjnubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjæmubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jnh´MÚhjãmubjÞ)�”}”(hŒ3``b`` current buffer of type struct v4l2_m2m_buffer”h]”(jä)�”}”(hŒ``b``”h]”jê)�”}”(hjDnh]”hŒb”…”�”}”(hjFnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjBnubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÜhj>nubj)�”}”(hhh]”jZ)�”}”(hŒ-current buffer of type struct v4l2_m2m_buffer”h]”hŒ-current buffer of type struct v4l2_m2m_buffer”…”�”}”(hj]nh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MÛhjZnubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj>nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jYnh´MÜhjãmubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjÇmubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ(v4l2_m2m_for_each_dst_buf_safe (C macro)”Œ c.v4l2_m2m_for_each_dst_buf_safe”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_for_each_dst_buf_safe”h]”hú)�”}”(hŒv4l2_m2m_for_each_dst_buf_safe”h]”j#)�”}”(hŒv4l2_m2m_for_each_dst_buf_safe”h]”j))�”}”(hj˜nh]”hŒv4l2_m2m_for_each_dst_buf_safe”…”�”}”(hj¢nh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjžnubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjšnh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Máubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj–nh²hh³jµnh´Máubah}”(h]”j‘nah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jµnh´Máhj“nh²hubjU)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jThj“nh²hh³jµnh´Máubeh}”(h]”h ]”(jsŒmacro”eh"]”h$]”h&]”jxjsjyjÎnjzjÎnj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´NubjZ)�”}”(hŒ2``v4l2_m2m_for_each_dst_buf_safe (m2m_ctx, b, n)``”h]”jê)�”}”(hjÔnh]”hŒ.v4l2_m2m_for_each_dst_buf_safe (m2m_ctx, b, n)”…”�”}”(hjÖnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÒnubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MãhhÊh²hubj…)�”}”(hŒ8iterate over a list of destination ready buffers safely ”h]”jZ)�”}”(hŒ7iterate over a list of destination ready buffers safely”h]”hŒ7iterate over a list of destination ready buffers safely”…”�”}”(hjînh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Máhjênubah}”(h]”h ]”h"]”h$]”h&]”uh1j„h³jünh´MáhhÊh²hubj)�”}”(hŒÃ**Parameters** ``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``b`` current buffer of type struct v4l2_m2m_buffer ``n`` used as temporary storage”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj oh]”hŒ Parameters”…”�”}”(hj oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjoubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MåhjoubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒX``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``m2m_ctx``”h]”jê)�”}”(hj(oh]”hŒm2m_ctx”…”�”}”(hj*oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj&oubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mähj"oubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjAoh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjKoh]”hŒ v4l2_m2m_ctx”…”�”}”(hjMoh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjIoubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j=oh´MähjAoubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j=oh´Mähj>oubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj"oubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j=oh´MähjoubjÞ)�”}”(hŒ4``b`` current buffer of type struct v4l2_m2m_buffer ”h]”(jä)�”}”(hŒ``b``”h]”jê)�”}”(hj€oh]”hŒb”…”�”}”(hj‚oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj~oubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Måhjzoubj)�”}”(hhh]”jZ)�”}”(hŒ-current buffer of type struct v4l2_m2m_buffer”h]”hŒ-current buffer of type struct v4l2_m2m_buffer”…”�”}”(hj™oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j•oh´Måhj–oubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjzoubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j•oh´MåhjoubjÞ)�”}”(hŒ``n`` used as temporary storage”h]”(jä)�”}”(hŒ``n``”h]”jê)�”}”(hj¹oh]”hŒn”…”�”}”(hj»oh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj·oubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mçhj³oubj)�”}”(hhh]”jZ)�”}”(hŒused as temporary storage”h]”hŒused as temporary storage”…”�”}”(hjÒoh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MæhjÏoubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj³oubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÎoh´Mçhjoubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjoubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ(v4l2_m2m_for_each_src_buf_safe (C macro)”Œ c.v4l2_m2m_for_each_src_buf_safe”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒv4l2_m2m_for_each_src_buf_safe”h]”hú)�”}”(hŒv4l2_m2m_for_each_src_buf_safe”h]”j#)�”}”(hŒv4l2_m2m_for_each_src_buf_safe”h]”j))�”}”(hj ph]”hŒv4l2_m2m_for_each_src_buf_safe”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjpubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjph²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mìubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj ph²hh³j*ph´Mìubah}”(h]”jpah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j*ph´Mìhjph²hubjU)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jThjph²hh³j*ph´Mìubeh}”(h]”h ]”(jsŒmacro”eh"]”h$]”h&]”jxjsjyjCpjzjCpj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´NubjZ)�”}”(hŒ2``v4l2_m2m_for_each_src_buf_safe (m2m_ctx, b, n)``”h]”jê)�”}”(hjIph]”hŒ.v4l2_m2m_for_each_src_buf_safe (m2m_ctx, b, n)”…”�”}”(hjKph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjGpubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MîhhÊh²hubj…)�”}”(hŒ3iterate over a list of source ready buffers safely ”h]”jZ)�”}”(hŒ2iterate over a list of source ready buffers safely”h]”hŒ2iterate over a list of source ready buffers safely”…”�”}”(hjcph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mìhj_pubah}”(h]”h ]”h"]”h$]”h&]”uh1j„h³jqph´MìhhÊh²hubj)�”}”(hŒÃ**Parameters** ``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``b`` current buffer of type struct v4l2_m2m_buffer ``n`` used as temporary storage”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj~ph]”hŒ Parameters”…”�”}”(hj€ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj|pubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MðhjxpubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒX``m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``m2m_ctx``”h]”jê)�”}”(hj�ph]”hŒm2m_ctx”…”�”}”(hjŸph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj›pubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mïhj—pubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj¶ph²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÀph]”hŒ v4l2_m2m_ctx”…”�”}”(hjÂph²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj¾pubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j²ph´Mïhj¶pubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j²ph´Mïhj³pubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj—pubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j²ph´Mïhj”pubjÞ)�”}”(hŒ4``b`` current buffer of type struct v4l2_m2m_buffer ”h]”(jä)�”}”(hŒ``b``”h]”jê)�”}”(hjõph]”hŒb”…”�”}”(hj÷ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjópubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mðhjïpubj)�”}”(hhh]”jZ)�”}”(hŒ-current buffer of type struct v4l2_m2m_buffer”h]”hŒ-current buffer of type struct v4l2_m2m_buffer”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j qh´Mðhj qubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjïpubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j qh´Mðhj”pubjÞ)�”}”(hŒ``n`` used as temporary storage”h]”(jä)�”}”(hŒ``n``”h]”jê)�”}”(hj.qh]”hŒn”…”�”}”(hj0qh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj,qubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mòhj(qubj)�”}”(hhh]”jZ)�”}”(hŒused as temporary storage”h]”hŒused as temporary storage”…”�”}”(hjGqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MñhjDqubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj(qubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jCqh´Mòhj”pubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjxpubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ v4l2_m2m_get_src_vq (C function)”Œc.v4l2_m2m_get_src_vq”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒEstruct vb2_queue * v4l2_m2m_get_src_vq (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒCstruct vb2_queue *v4l2_m2m_get_src_vq(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjˆqh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj„qh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M÷ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj–qh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj„qh²hh³j•qh´M÷ubh)�”}”(hhh]”j))�”}”(hŒ vb2_queue”h]”hŒ vb2_queue”…”�”}”(hj§qh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¤qubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j©qŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_get_src_vq”sbŒc.v4l2_m2m_get_src_vq”†”asbuh1hhj„qh²hh³j•qh´M÷ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÈqh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj„qh²hh³j•qh´M÷ubj )�”}”(hj h]”hŒ*”…”�”}”(hjÖqh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj„qh²hh³j•qh´M÷ubj#)�”}”(hŒv4l2_m2m_get_src_vq”h]”j))�”}”(hjÅqh]”hŒv4l2_m2m_get_src_vq”…”�”}”(hjçqh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjãqubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj„qh²hh³j•qh´M÷ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjrh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjþqubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjrh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjþqubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj rh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjrubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j"rŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÃqŒc.v4l2_m2m_get_src_vq”†”asbuh1hhjþqubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj>rh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjþqubj )�”}”(hj h]”hŒ*”…”�”}”(hjLrh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjþqubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjYrh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjþqubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjúqubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj„qh²hh³j•qh´M÷ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj€qh²hh³j•qh´M÷ubah}”(h]”j{qah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j•qh´M÷hj}qh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ#return vb2_queue for source buffers”h]”hŒ#return vb2_queue for source buffers”…”�”}”(hjƒrh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M÷hj€rh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj}qh²hh³j•qh´M÷ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj›rjzj›rj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj¥rh]”hŒ Parameters”…”�”}”(hj§rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj£rubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MûhjŸrubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjÄrh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjÆrh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÂrubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mýhj¾rubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjÝrh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjçrh]”hŒ v4l2_m2m_ctx”…”�”}”(hjérh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjårubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MùhjÝrubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jsh´MùhjÚrubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj¾rubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÙrh´Mýhj»rubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjŸrubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ v4l2_m2m_get_dst_vq (C function)”Œc.v4l2_m2m_get_dst_vq”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒEstruct vb2_queue * v4l2_m2m_get_dst_vq (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒCstruct vb2_queue *v4l2_m2m_get_dst_vq(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj=sh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj9sh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjKsh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9sh²hh³jJsh´Mubh)�”}”(hhh]”j))�”}”(hŒ vb2_queue”h]”hŒ vb2_queue”…”�”}”(hj\sh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjYsubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j^sŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_get_dst_vq”sbŒc.v4l2_m2m_get_dst_vq”†”asbuh1hhj9sh²hh³jJsh´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj}sh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9sh²hh³jJsh´Mubj )�”}”(hj h]”hŒ*”…”�”}”(hj‹sh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj9sh²hh³jJsh´Mubj#)�”}”(hŒv4l2_m2m_get_dst_vq”h]”j))�”}”(hjzsh]”hŒv4l2_m2m_get_dst_vq”…”�”}”(hjœsh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj˜subah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj9sh²hh³jJsh´Mubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj·sh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj³subj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÄsh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj³subh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjÕsh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÒsubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j×sŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jxsŒc.v4l2_m2m_get_dst_vq”†”asbuh1hhj³subj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjósh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj³subj )�”}”(hj h]”hŒ*”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj³subj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj³subeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj¯subah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj9sh²hh³jJsh´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj5sh²hh³jJsh´Mubah}”(h]”j0sah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jJsh´Mhj2sh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ(return vb2_queue for destination buffers”h]”hŒ(return vb2_queue for destination buffers”…”�”}”(hj8th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj5th²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj2sh²hh³jJsh´Mubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjPtjzjPtj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjZth]”hŒ Parameters”…”�”}”(hj\th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjXtubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjTtubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjyth]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj{th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjwtubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhjstubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj’th²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjœth]”hŒ v4l2_m2m_ctx”…”�”}”(hjžth²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjštubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj’tubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¹th´Mhj�tubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjstubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jŽth´Mhjptubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjTtubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ v4l2_m2m_buf_remove (C function)”Œc.v4l2_m2m_buf_remove”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒOstruct vb2_v4l2_buffer * v4l2_m2m_buf_remove (struct v4l2_m2m_queue_ctx *q_ctx)”h]”hú)�”}”(hŒMstruct vb2_v4l2_buffer *v4l2_m2m_buf_remove(struct v4l2_m2m_queue_ctx *q_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjòth²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjîth²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjîth²hh³jÿth´M ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjuubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”juŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_buf_remove”sbŒc.v4l2_m2m_buf_remove”†”asbuh1hhjîth²hh³jÿth´M ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj2uh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjîth²hh³jÿth´M ubj )�”}”(hj h]”hŒ*”…”�”}”(hj@uh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjîth²hh³jÿth´M ubj#)�”}”(hŒv4l2_m2m_buf_remove”h]”j))�”}”(hj/uh]”hŒv4l2_m2m_buf_remove”…”�”}”(hjQuh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjMuubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjîth²hh³jÿth´M ubj1 )�”}”(hŒ"(struct v4l2_m2m_queue_ctx *q_ctx)”h]”j7 )�”}”(hŒ struct v4l2_m2m_queue_ctx *q_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjluh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjhuubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjyuh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjhuubh)�”}”(hhh]”j))�”}”(hŒv4l2_m2m_queue_ctx”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hjŠuh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj‡uubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jŒuŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j-uŒc.v4l2_m2m_buf_remove”†”asbuh1hhjhuubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¨uh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjhuubj )�”}”(hj h]”hŒ*”…”�”}”(hj¶uh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjhuubj))�”}”(hŒq_ctx”h]”hŒq_ctx”…”�”}”(hjÃuh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjhuubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjduubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjîth²hh³jÿth´M ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjêth²hh³jÿth´M ubah}”(h]”jåtah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jÿth´M hjçth²hubjU)�”}”(hhh]”jZ)�”}”(hŒ>take off a buffer from the list of ready buffers and return it”h]”hŒ>take off a buffer from the list of ready buffers and return it”…”�”}”(hjíuh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M hjêuh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjçth²hh³jÿth´M ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjvjzjvj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ_**Parameters** ``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjvh]”hŒ Parameters”…”�”}”(hjvh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj vubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj vubjÙ)�”}”(hhh]”jÞ)�”}”(hŒM``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx**”h]”(jä)�”}”(hŒ$``struct v4l2_m2m_queue_ctx *q_ctx``”h]”jê)�”}”(hj.vh]”hŒ struct v4l2_m2m_queue_ctx *q_ctx”…”�”}”(hj0vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj,vubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj(vubj)�”}”(hhh]”jZ)�”}”(hŒ(pointer to struct **v4l2_m2m_queue_ctx**”h]”(hŒpointer to struct ”…”�”}”(hjGvh²hh³Nh´Nubj�)�”}”(hŒ**v4l2_m2m_queue_ctx**”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hjOvh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjGvubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjDvubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj(vubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jCvh´Mhj%vubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj vubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ$v4l2_m2m_src_buf_remove (C function)”Œc.v4l2_m2m_src_buf_remove”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒOstruct vb2_v4l2_buffer * v4l2_m2m_src_buf_remove (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒMstruct vb2_v4l2_buffer *v4l2_m2m_src_buf_remove(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj–vh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj’vh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¤vh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj’vh²hh³j£vh´Mubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjµvh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj²vubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j·vŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_src_buf_remove”sbŒc.v4l2_m2m_src_buf_remove”†”asbuh1hhj’vh²hh³j£vh´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÖvh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj’vh²hh³j£vh´Mubj )�”}”(hj h]”hŒ*”…”�”}”(hjävh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj’vh²hh³j£vh´Mubj#)�”}”(hŒv4l2_m2m_src_buf_remove”h]”j))�”}”(hjÓvh]”hŒv4l2_m2m_src_buf_remove”…”�”}”(hjõvh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjñvubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj’vh²hh³j£vh´Mubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj wubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj wubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj.wh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj+wubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j0wŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jÑvŒc.v4l2_m2m_src_buf_remove”†”asbuh1hhj wubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjLwh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj wubj )�”}”(hj h]”hŒ*”…”�”}”(hjZwh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj wubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjgwh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj wubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjwubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj’vh²hh³j£vh´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjŽvh²hh³j£vh´Mubah}”(h]”j‰vah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j£vh´Mhj‹vh²hubjU)�”}”(hhh]”jZ)�”}”(hŒEtake off a source buffer from the list of ready buffers and return it”h]”hŒEtake off a source buffer from the list of ready buffers and return it”…”�”}”(hj‘wh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjŽwh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj‹vh²hh³j£vh´Mubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj©wjzj©wj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj³wh]”hŒ Parameters”…”�”}”(hjµwh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj±wubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhj­wubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjÒwh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hjÔwh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÐwubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MhjÌwubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjëwh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjõwh]”hŒ v4l2_m2m_ctx”…”�”}”(hj÷wh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjówubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mhjëwubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jxh´Mhjèwubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÌwubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jçwh´MhjÉwubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhj­wubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ$v4l2_m2m_dst_buf_remove (C function)”Œc.v4l2_m2m_dst_buf_remove”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒOstruct vb2_v4l2_buffer * v4l2_m2m_dst_buf_remove (struct v4l2_m2m_ctx *m2m_ctx)”h]”hú)�”}”(hŒMstruct vb2_v4l2_buffer *v4l2_m2m_dst_buf_remove(struct v4l2_m2m_ctx *m2m_ctx)”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjKxh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjGxh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M!ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjYxh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjGxh²hh³jXxh´M!ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjjxh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjgxubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jlxŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp Œv4l2_m2m_dst_buf_remove”sbŒc.v4l2_m2m_dst_buf_remove”†”asbuh1hhjGxh²hh³jXxh´M!ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‹xh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjGxh²hh³jXxh´M!ubj )�”}”(hj h]”hŒ*”…”�”}”(hj™xh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjGxh²hh³jXxh´M!ubj#)�”}”(hŒv4l2_m2m_dst_buf_remove”h]”j))�”}”(hjˆxh]”hŒv4l2_m2m_dst_buf_remove”…”�”}”(hjªxh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¦xubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjGxh²hh³jXxh´M!ubj1 )�”}”(hŒ(struct v4l2_m2m_ctx *m2m_ctx)”h]”j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÅxh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjÁxubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÒxh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÁxubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjãxh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjàxubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jåxŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j†xŒc.v4l2_m2m_dst_buf_remove”†”asbuh1hhjÁxubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjyh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÁxubj )�”}”(hj h]”hŒ*”…”�”}”(hjyh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjÁxubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjyh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÁxubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj½xubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjGxh²hh³jXxh´M!ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjCxh²hh³jXxh´M!ubah}”(h]”j>xah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jXxh´M!hj@xh²hubjU)�”}”(hhh]”jZ)�”}”(hŒJtake off a destination buffer from the list of ready buffers and return it”h]”hŒJtake off a destination buffer from the list of ready buffers and return it”…”�”}”(hjFyh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M!hjCyh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj@xh²hh³jXxh´M!ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj^yjzj^yj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjhyh]”hŒ Parameters”…”�”}”(hjjyh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjfyubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M%hjbyubjÙ)�”}”(hhh]”jÞ)�”}”(hŒl``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj‡yh]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj‰yh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj…yubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M'hj�yubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj yh²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjªyh]”hŒ v4l2_m2m_ctx”…”�”}”(hj¬yh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj¨yubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M$hj yubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÇyh´M$hj�yubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj�yubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jœyh´M'hj~yubah}”(h]”h ]”h"]”h$]”h&]”uh1jØhjbyubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ'v4l2_m2m_buf_remove_by_buf (C function)”Œc.v4l2_m2m_buf_remove_by_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ`void v4l2_m2m_buf_remove_by_buf (struct v4l2_m2m_queue_ctx *q_ctx, struct vb2_v4l2_buffer *vbuf)”h]”hú)�”}”(hŒ_void v4l2_m2m_buf_remove_by_buf(struct v4l2_m2m_queue_ctx *q_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjüyh²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M-ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjüyh²hh³jzh´M-ubj#)�”}”(hŒv4l2_m2m_buf_remove_by_buf”h]”j))�”}”(hŒv4l2_m2m_buf_remove_by_buf”h]”hŒv4l2_m2m_buf_remove_by_buf”…”�”}”(hj!zh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjzubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjüyh²hh³jzh´M-ubj1 )�”}”(hŒ@(struct v4l2_m2m_queue_ctx *q_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(j7 )�”}”(hŒ struct v4l2_m2m_queue_ctx *q_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj=zh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj9zubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjJzh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9zubh)�”}”(hhh]”j))�”}”(hŒv4l2_m2m_queue_ctx”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hj[zh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjXzubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j]zŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j#zsbŒc.v4l2_m2m_buf_remove_by_buf”†”asbuh1hhj9zubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj{zh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9zubj )�”}”(hj h]”hŒ*”…”�”}”(hj‰zh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj9zubj))�”}”(hŒq_ctx”h]”hŒq_ctx”…”�”}”(hj–zh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj9zubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj5zubj7 )�”}”(hŒstruct vb2_v4l2_buffer *vbuf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj¯zh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj«zubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¼zh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj«zubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjÍzh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÊzubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jÏzŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jwzŒc.v4l2_m2m_buf_remove_by_buf”†”asbuh1hhj«zubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjëzh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj«zubj )�”}”(hj h]”hŒ*”…”�”}”(hjùzh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj«zubj))�”}”(hŒvbuf”h]”hŒvbuf”…”�”}”(hj{h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj«zubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj5zubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjüyh²hh³jzh´M-ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjøyh²hh³jzh´M-ubah}”(h]”jóyah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jzh´M-hjõyh²hubjU)�”}”(hhh]”jZ)�”}”(hŒ4take off exact buffer from the list of ready buffers”h]”hŒ4take off exact buffer from the list of ready buffers”…”�”}”(hj0{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M-hj-{h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjõyh²hh³jzh´M-ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjH{jzjH{j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒœ**Parameters** ``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx** ``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjR{h]”hŒ Parameters”…”�”}”(hjT{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjP{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M1hjL{ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒN``struct v4l2_m2m_queue_ctx *q_ctx`` pointer to struct **v4l2_m2m_queue_ctx** ”h]”(jä)�”}”(hŒ$``struct v4l2_m2m_queue_ctx *q_ctx``”h]”jê)�”}”(hjq{h]”hŒ struct v4l2_m2m_queue_ctx *q_ctx”…”�”}”(hjs{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjo{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M0hjk{ubj)�”}”(hhh]”jZ)�”}”(hŒ(pointer to struct **v4l2_m2m_queue_ctx**”h]”(hŒpointer to struct ”…”�”}”(hjŠ{h²hh³Nh´Nubj�)�”}”(hŒ**v4l2_m2m_queue_ctx**”h]”hŒv4l2_m2m_queue_ctx”…”�”}”(hj’{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjŠ{ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j†{h´M0hj‡{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjk{ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j†{h´M0hjh{ubjÞ)�”}”(hŒ9``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jä)�”}”(hŒ ``struct vb2_v4l2_buffer *vbuf``”h]”jê)�”}”(hj¸{h]”hŒstruct vb2_v4l2_buffer *vbuf”…”�”}”(hjº{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¶{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M2hj²{ubj)�”}”(hhh]”jZ)�”}”(hŒthe buffer to be removed”h]”hŒthe buffer to be removed”…”�”}”(hjÑ{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M1hjÎ{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj²{ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jÍ{h´M2hjh{ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhjL{ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ+v4l2_m2m_src_buf_remove_by_buf (C function)”Œ c.v4l2_m2m_src_buf_remove_by_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ`void v4l2_m2m_src_buf_remove_by_buf (struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”hú)�”}”(hŒ_void v4l2_m2m_src_buf_remove_by_buf(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj|h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M7ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj!|h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj|h²hh³j |h´M7ubj#)�”}”(hŒv4l2_m2m_src_buf_remove_by_buf”h]”j))�”}”(hŒv4l2_m2m_src_buf_remove_by_buf”h]”hŒv4l2_m2m_src_buf_remove_by_buf”…”�”}”(hj3|h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj/|ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj|h²hh³j |h´M7ubj1 )�”}”(hŒ<(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjO|h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjK|ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj\|h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjK|ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hjm|h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjj|ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jo|Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j5|sbŒ c.v4l2_m2m_src_buf_remove_by_buf”†”asbuh1hhjK|ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�|h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjK|ubj )�”}”(hj h]”hŒ*”…”�”}”(hj›|h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjK|ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hj¨|h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjK|ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjG|ubj7 )�”}”(hŒstruct vb2_v4l2_buffer *vbuf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjÁ|h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj½|ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÎ|h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj½|ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjß|h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÜ|ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”já|Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”j‰|Œ c.v4l2_m2m_src_buf_remove_by_buf”†”asbuh1hhj½|ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjý|h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj½|ubj )�”}”(hj h]”hŒ*”…”�”}”(hj }h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj½|ubj))�”}”(hŒvbuf”h]”hŒvbuf”…”�”}”(hj}h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj½|ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjG|ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj|h²hh³j |h´M7ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj |h²hh³j |h´M7ubah}”(h]”j|ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j |h´M7hj|h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ;take off exact source buffer from the list of ready buffers”h]”hŒ;take off exact source buffer from the list of ready buffers”…”�”}”(hjB}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M7hj?}h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj|h²hh³j |h´M7ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjZ}jzjZ}j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ»**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjd}h]”hŒ Parameters”…”�”}”(hjf}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjb}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M;hj^}ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hjƒ}h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj…}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj�}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M:hj}}ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hjœ}h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hj¦}h]”hŒ v4l2_m2m_ctx”…”�”}”(hj¨}h²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhj¤}ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j˜}h´M:hjœ}ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j˜}h´M:hj™}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj}}ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j˜}h´M:hjz}ubjÞ)�”}”(hŒ9``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jä)�”}”(hŒ ``struct vb2_v4l2_buffer *vbuf``”h]”jê)�”}”(hjÛ}h]”hŒstruct vb2_v4l2_buffer *vbuf”…”�”}”(hjÝ}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjÙ}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M<hjÕ}ubj)�”}”(hhh]”jZ)�”}”(hŒthe buffer to be removed”h]”hŒthe buffer to be removed”…”�”}”(hjô}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M;hjñ}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÕ}ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jð}h´M<hjz}ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj^}ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ+v4l2_m2m_dst_buf_remove_by_buf (C function)”Œ c.v4l2_m2m_dst_buf_remove_by_buf”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ`void v4l2_m2m_dst_buf_remove_by_buf (struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”•Õ?h]”hú)�”}”(hŒ_void v4l2_m2m_dst_buf_remove_by_buf(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj5~h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hj1~h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MDubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjD~h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj1~h²hh³jC~h´MDubj#)�”}”(hŒv4l2_m2m_dst_buf_remove_by_buf”h]”j))�”}”(hŒv4l2_m2m_dst_buf_remove_by_buf”h]”hŒv4l2_m2m_dst_buf_remove_by_buf”…”�”}”(hjV~h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjR~ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj1~h²hh³jC~h´MDubj1 )�”}”(hŒ<(struct v4l2_m2m_ctx *m2m_ctx, struct vb2_v4l2_buffer *vbuf)”h]”(j7 )�”}”(hŒstruct v4l2_m2m_ctx *m2m_ctx”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjr~h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjn~ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjn~ubh)�”}”(hhh]”j))�”}”(hŒ v4l2_m2m_ctx”h]”hŒ v4l2_m2m_ctx”…”�”}”(hj�~h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj�~ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”j’~Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp jX~sbŒ c.v4l2_m2m_dst_buf_remove_by_buf”†”asbuh1hhjn~ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj°~h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjn~ubj )�”}”(hj h]”hŒ*”…”�”}”(hj¾~h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjn~ubj))�”}”(hŒm2m_ctx”h]”hŒm2m_ctx”…”�”}”(hjË~h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjn~ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjj~ubj7 )�”}”(hŒstruct vb2_v4l2_buffer *vbuf”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjä~h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjà~ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjñ~h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjà~ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjÿ~ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”j¬~Œ c.v4l2_m2m_dst_buf_remove_by_buf”†”asbuh1hhjà~ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjà~ubj )�”}”(hj h]”hŒ*”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hjà~ubj))�”}”(hŒvbuf”h]”hŒvbuf”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjà~ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hjj~ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hj1~h²hh³jC~h´MDubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj-~h²hh³jC~h´MDubah}”(h]”j(~ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jC~h´MDhj*~h²hubjU)�”}”(hhh]”jZ)�”}”(hŒ@take off exact destination buffer from the list of ready buffers”h]”hŒ@take off exact destination buffer from the list of ready buffers”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MDhjbh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj*~h²hh³jC~h´MDubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj}jzj}j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ»**Parameters** ``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hj‡h]”hŒ Parameters”…”�”}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhj…ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MHhj�ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒm``struct v4l2_m2m_ctx *m2m_ctx`` m2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx` ”h]”(jä)�”}”(hŒ ``struct v4l2_m2m_ctx *m2m_ctx``”h]”jê)�”}”(hj¦h]”hŒstruct v4l2_m2m_ctx *m2m_ctx”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj¤ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MGhj ubj)�”}”(hhh]”jZ)�”}”(hŒKm2m context assigned to the instance given by struct :c:type:`v4l2_m2m_ctx`”h]”(hŒ5m2m context assigned to the instance given by struct ”…”�”}”(hj¿h²hh³Nh´Nubh)�”}”(hŒ:c:type:`v4l2_m2m_ctx`”h]”jê)�”}”(hjÉh]”hŒ v4l2_m2m_ctx”…”�”}”(hjËh²hh³Nh´Nubah}”(h]”h ]”(j¡jsŒc-type”eh"]”h$]”h&]”uh1jéhjÇubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j­Œ refdomain”jsŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j³j·j»Œ v4l2_m2m_ctx”uh1hh³j»h´MGhj¿ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j»h´MGhj¼ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j»h´MGhj�ubjÞ)�”}”(hŒ9``struct vb2_v4l2_buffer *vbuf`` the buffer to be removed”h]”(jä)�”}”(hŒ ``struct vb2_v4l2_buffer *vbuf``”h]”jê)�”}”(hjþh]”hŒstruct vb2_v4l2_buffer *vbuf”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjüubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MIhjøubj)�”}”(hhh]”jZ)�”}”(hŒthe buffer to be removed”h]”hŒthe buffer to be removed”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MHhj€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjøubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j€h´MIhj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj�ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ'v4l2_m2m_buf_copy_metadata (C function)”Œc.v4l2_m2m_buf_copy_metadata”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒfvoid v4l2_m2m_buf_copy_metadata (const struct vb2_v4l2_buffer *out_vb, struct vb2_v4l2_buffer *cap_vb)”h]”hú)�”}”(hŒevoid v4l2_m2m_buf_copy_metadata(const struct vb2_v4l2_buffer *out_vb, struct vb2_v4l2_buffer *cap_vb)”h]”(jè )�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjX€h²hh³Nh´Nubah}”(h]”h ]”jô ah"]”h$]”h&]”uh1jç hjT€h²hh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M`ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjg€h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjT€h²hh³jf€h´M`ubj#)�”}”(hŒv4l2_m2m_buf_copy_metadata”h]”j))�”}”(hŒv4l2_m2m_buf_copy_metadata”h]”hŒv4l2_m2m_buf_copy_metadata”…”�”}”(hjy€h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hju€ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjT€h²hh³jf€h´M`ubj1 )�”}”(hŒF(const struct vb2_v4l2_buffer *out_vb, struct vb2_v4l2_buffer *cap_vb)”h]”(j7 )�”}”(hŒ$const struct vb2_v4l2_buffer *out_vb”h]”(j)�”}”(hjyPh]”hŒconst”…”�”}”(hj•€h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj‘€ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¢€h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj‘€ubj)�”}”(hjh]”hŒstruct”…”�”}”(hj°€h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj‘€ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj½€h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj‘€ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj΀h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjË€ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jЀŒmodname”NŒ classname”Nj³j¶)�”}”j¹]”jx )�”}”jp j{€sbŒc.v4l2_m2m_buf_copy_metadata”†”asbuh1hhj‘€ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjî€h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj‘€ubj )�”}”(hj h]”hŒ*”…”�”}”(hjü€h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj‘€ubj))�”}”(hŒout_vb”h]”hŒout_vb”…”�”}”(hj �h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj‘€ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj�€ubj7 )�”}”(hŒstruct vb2_v4l2_buffer *cap_vb”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj"�h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj/�h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�ubh)�”}”(hhh]”j))�”}”(hŒvb2_v4l2_buffer”h]”hŒvb2_v4l2_buffer”…”�”}”(hj@�h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj=�ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”jp Œ reftarget”jB�Œmodname”NŒ classname”Nj³j¶)�”}”j¹]”jꀌc.v4l2_m2m_buf_copy_metadata”†”asbuh1hhj�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj^�h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�ubj )�”}”(hj h]”hŒ*”…”�”}”(hjl�h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1j hj�ubj))�”}”(hŒcap_vb”h]”hŒcap_vb”…”�”}”(hjy�h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj�ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1j6 hj�€ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j0 hjT€h²hh³jf€h´M`ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjP€h²hh³jf€h´M`ubah}”(h]”jK€ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jf€h´M`hjM€h²hubjU)�”}”(hhh]”jZ)�”}”(hŒAcopy buffer metadata from the output buffer to the capture buffer”h]”hŒAcopy buffer metadata from the output buffer to the capture buffer”…”�”}”(hj£�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´M`hj �h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjM€h²hh³jf€h´M`ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj»�jzj»�j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hX‡**Parameters** ``const struct vb2_v4l2_buffer *out_vb`` the output buffer that is the source of the metadata. ``struct vb2_v4l2_buffer *cap_vb`` the capture buffer that will receive the metadata. **Description** This helper function copies the timestamp, timecode (if the TIMECODE buffer flag was set), field, and the TIMECODE and TSTAMP_SRC_MASK flags from **out_vb** to **cap_vb**.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j�)�”}”(hjÅ�h]”hŒ Parameters”…”�”}”(hjÇ�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjÃ�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mdhj¿�ubjÙ)�”}”(hhh]”(jÞ)�”}”(hŒ_``const struct vb2_v4l2_buffer *out_vb`` the output buffer that is the source of the metadata. ”h]”(jä)�”}”(hŒ(``const struct vb2_v4l2_buffer *out_vb``”h]”jê)�”}”(hjä�h]”hŒ$const struct vb2_v4l2_buffer *out_vb”…”�”}”(hjæ�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhjâ�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´MchjÞ�ubj)�”}”(hhh]”jZ)�”}”(hŒ5the output buffer that is the source of the metadata.”h]”hŒ5the output buffer that is the source of the metadata.”…”�”}”(hjý�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jù�h´Mchjú�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhjÞ�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³jù�h´MchjÛ�ubjÞ)�”}”(hŒV``struct vb2_v4l2_buffer *cap_vb`` the capture buffer that will receive the metadata. ”h]”(jä)�”}”(hŒ"``struct vb2_v4l2_buffer *cap_vb``”h]”jê)�”}”(hj‚h]”hŒstruct vb2_v4l2_buffer *cap_vb”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jéhj‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jãh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mdhj‚ubj)�”}”(hhh]”jZ)�”}”(hŒ2the capture buffer that will receive the metadata.”h]”hŒ2the capture buffer that will receive the metadata.”…”�”}”(hj6‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j2‚h´Mdhj3‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÿhj‚ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÝh³j2‚h´MdhjÛ�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jØhj¿�ubjZ)�”}”(hŒ**Description**”h]”j�)�”}”(hjX‚h]”hŒ Description”…”�”}”(hjZ‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjV‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mfhj¿�ubjZ)�”}”(hŒ«This helper function copies the timestamp, timecode (if the TIMECODE buffer flag was set), field, and the TIMECODE and TSTAMP_SRC_MASK flags from **out_vb** to **cap_vb**.”h]”(hŒ’This helper function copies the timestamp, timecode (if the TIMECODE buffer flag was set), field, and the TIMECODE and TSTAMP_SRC_MASK flags from ”…”�”}”(hjn‚h²hh³Nh´Nubj�)�”}”(hŒ **out_vb**”h]”hŒout_vb”…”�”}”(hjv‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjn‚ubhŒ to ”…”�”}”(hjn‚h²hh³Nh´Nubj�)�”}”(hŒ **cap_vb**”h]”hŒcap_vb”…”�”}”(hjˆ‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jŽhjn‚ubhŒ.”…”�”}”(hjn‚h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œi/var/lib/git/docbuild/linux/Documentation/driver-api/media/v4l2-mem2mem:6: ./include/media/v4l2-mem2mem.h”h´Mehj¿�ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´Nubeh}”(h]”Œ3v4l2-memory-to-memory-functions-and-data-structures”ah ]”h"]”Œ3v4l2 memory to memory functions and data structures”ah$]”h&]”uh1hÈhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hÍNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jÓ‚Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”j­‚jª‚sŒ nametypes”}”j­‚‰sh}”(jª‚hÊhìhõj¬j±jôjùjo jt jÚ jß jP jU jùjþj·j¼j2j7jDjIj¾jÃj8j=jØjÝjQjVj¸j½jú jÿ j{"j€"jü#j$j'j 'j6*j;*j@-jE-jJ0jO0jT3jY3j^6jc6jh9jm9je<jj<jb?jg?j…AjŠAj§Cj¬Cj’Fj—Fj}Ij‚IjÀLjÅLjðOjõOjRjRj”Sj™SjUjUj–Vj›VjÉZjÎZji\jn\jÑ^jÖ^jg`jl`jýajbj¡cj¦cjVej[ej gjgj¯hj´hjdjjijjljljUmjZmj‘nj–njpj pj{qj€qj0sj5sjåtjêtj‰vjŽvj>xjCxjóyjøyj|j |j(~j-~jK€jP€uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.