mirror of
				https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
				synced 2025-10-31 16:18:51 +01:00 
			
		
		
		
	Fixed MTP to work with TWRP
This commit is contained in:
		
						commit
						f6dfaef42e
					
				
					 50820 changed files with 20846062 additions and 0 deletions
				
			
		
							
								
								
									
										216
									
								
								Documentation/DocBook/media/v4l/media-ioc-enum-links.xml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										216
									
								
								Documentation/DocBook/media/v4l/media-ioc-enum-links.xml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,216 @@ | |||
| <refentry id="media-ioc-enum-links"> | ||||
|   <refmeta> | ||||
|     <refentrytitle>ioctl MEDIA_IOC_ENUM_LINKS</refentrytitle> | ||||
|     &manvol; | ||||
|   </refmeta> | ||||
| 
 | ||||
|   <refnamediv> | ||||
|     <refname>MEDIA_IOC_ENUM_LINKS</refname> | ||||
|     <refpurpose>Enumerate all pads and links for a given entity</refpurpose> | ||||
|   </refnamediv> | ||||
| 
 | ||||
|   <refsynopsisdiv> | ||||
|     <funcsynopsis> | ||||
|       <funcprototype> | ||||
| 	<funcdef>int <function>ioctl</function></funcdef> | ||||
| 	<paramdef>int <parameter>fd</parameter></paramdef> | ||||
| 	<paramdef>int <parameter>request</parameter></paramdef> | ||||
| 	<paramdef>struct media_links_enum *<parameter>argp</parameter></paramdef> | ||||
|       </funcprototype> | ||||
|     </funcsynopsis> | ||||
|   </refsynopsisdiv> | ||||
| 
 | ||||
|   <refsect1> | ||||
|     <title>Arguments</title> | ||||
| 
 | ||||
|     <variablelist> | ||||
|       <varlistentry> | ||||
| 	<term><parameter>fd</parameter></term> | ||||
| 	<listitem> | ||||
| 	  <para>File descriptor returned by | ||||
| 	  <link linkend='media-func-open'><function>open()</function></link>.</para> | ||||
| 	</listitem> | ||||
|       </varlistentry> | ||||
|       <varlistentry> | ||||
| 	<term><parameter>request</parameter></term> | ||||
| 	<listitem> | ||||
| 	  <para>MEDIA_IOC_ENUM_LINKS</para> | ||||
| 	</listitem> | ||||
|       </varlistentry> | ||||
|       <varlistentry> | ||||
| 	<term><parameter>argp</parameter></term> | ||||
| 	<listitem> | ||||
| 	  <para></para> | ||||
| 	</listitem> | ||||
|       </varlistentry> | ||||
|     </variablelist> | ||||
|   </refsect1> | ||||
| 
 | ||||
|   <refsect1> | ||||
|     <title>Description</title> | ||||
| 
 | ||||
|     <para>To enumerate pads and/or links for a given entity, applications set | ||||
|     the entity field of a &media-links-enum; structure and initialize the | ||||
|     &media-pad-desc; and &media-link-desc; structure arrays pointed by the | ||||
|     <structfield>pads</structfield> and <structfield>links</structfield> fields. | ||||
|     They then call the MEDIA_IOC_ENUM_LINKS ioctl with a pointer to this | ||||
|     structure.</para> | ||||
|     <para>If the <structfield>pads</structfield> field is not NULL, the driver | ||||
|     fills the <structfield>pads</structfield> array with information about the | ||||
|     entity's pads. The array must have enough room to store all the entity's | ||||
|     pads. The number of pads can be retrieved with the &MEDIA-IOC-ENUM-ENTITIES; | ||||
|     ioctl.</para> | ||||
|     <para>If the <structfield>links</structfield> field is not NULL, the driver | ||||
|     fills the <structfield>links</structfield> array with information about the | ||||
|     entity's outbound links. The array must have enough room to store all the | ||||
|     entity's outbound links. The number of outbound links can be retrieved with | ||||
|     the &MEDIA-IOC-ENUM-ENTITIES; ioctl.</para> | ||||
|     <para>Only forward links that originate at one of the entity's source pads | ||||
|     are returned during the enumeration process.</para> | ||||
| 
 | ||||
|     <table pgwide="1" frame="none" id="media-links-enum"> | ||||
|       <title>struct <structname>media_links_enum</structname></title> | ||||
|       <tgroup cols="3"> | ||||
|         &cs-str; | ||||
| 	<tbody valign="top"> | ||||
| 	  <row> | ||||
| 	    <entry>__u32</entry> | ||||
| 	    <entry><structfield>entity</structfield></entry> | ||||
| 	    <entry>Entity id, set by the application.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>&media-pad-desc;</entry> | ||||
| 	    <entry>*<structfield>pads</structfield></entry> | ||||
| 	    <entry>Pointer to a pads array allocated by the application. Ignored | ||||
| 	    if NULL.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>&media-link-desc;</entry> | ||||
| 	    <entry>*<structfield>links</structfield></entry> | ||||
| 	    <entry>Pointer to a links array allocated by the application. Ignored | ||||
| 	    if NULL.</entry> | ||||
| 	  </row> | ||||
| 	</tbody> | ||||
|       </tgroup> | ||||
|     </table> | ||||
| 
 | ||||
|     <table pgwide="1" frame="none" id="media-pad-desc"> | ||||
|       <title>struct <structname>media_pad_desc</structname></title> | ||||
|       <tgroup cols="3"> | ||||
|         &cs-str; | ||||
| 	<tbody valign="top"> | ||||
| 	  <row> | ||||
| 	    <entry>__u32</entry> | ||||
| 	    <entry><structfield>entity</structfield></entry> | ||||
| 	    <entry>ID of the entity this pad belongs to.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>__u16</entry> | ||||
| 	    <entry><structfield>index</structfield></entry> | ||||
| 	    <entry>0-based pad index.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>__u32</entry> | ||||
| 	    <entry><structfield>flags</structfield></entry> | ||||
| 	    <entry>Pad flags, see <xref linkend="media-pad-flag" /> for more details.</entry> | ||||
| 	  </row> | ||||
| 	</tbody> | ||||
|       </tgroup> | ||||
|     </table> | ||||
| 
 | ||||
|     <table frame="none" pgwide="1" id="media-pad-flag"> | ||||
|       <title>Media pad flags</title> | ||||
|       <tgroup cols="2"> | ||||
|         <colspec colname="c1"/> | ||||
|         <colspec colname="c2"/> | ||||
| 	<tbody valign="top"> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_PAD_FL_SINK</constant></entry> | ||||
| 	    <entry>Input pad, relative to the entity. Input pads sink data and | ||||
| 	    are targets of links.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_PAD_FL_SOURCE</constant></entry> | ||||
| 	    <entry>Output pad, relative to the entity. Output pads source data | ||||
| 	    and are origins of links.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_PAD_FL_MUST_CONNECT</constant></entry> | ||||
| 	    <entry>If this flag is set and the pad is linked to any other | ||||
| 	    pad, then at least one of those links must be enabled for the | ||||
| 	    entity to be able to stream. There could be temporary reasons | ||||
| 	    (e.g. device configuration dependent) for the pad to need | ||||
| 	    enabled links even when this flag isn't set; the absence of the | ||||
| 	    flag doesn't imply there is none.</entry> | ||||
| 	  </row> | ||||
| 	</tbody> | ||||
|       </tgroup> | ||||
|     </table> | ||||
| 
 | ||||
|     <table pgwide="1" frame="none" id="media-link-desc"> | ||||
|       <title>struct <structname>media_link_desc</structname></title> | ||||
|       <tgroup cols="3"> | ||||
|         &cs-str; | ||||
| 	<tbody valign="top"> | ||||
| 	  <row> | ||||
| 	    <entry>&media-pad-desc;</entry> | ||||
| 	    <entry><structfield>source</structfield></entry> | ||||
| 	    <entry>Pad at the origin of this link.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>&media-pad-desc;</entry> | ||||
| 	    <entry><structfield>sink</structfield></entry> | ||||
| 	    <entry>Pad at the target of this link.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry>__u32</entry> | ||||
| 	    <entry><structfield>flags</structfield></entry> | ||||
| 	    <entry>Link flags, see <xref linkend="media-link-flag" /> for more details.</entry> | ||||
| 	  </row> | ||||
| 	</tbody> | ||||
|       </tgroup> | ||||
|     </table> | ||||
| 
 | ||||
|     <table frame="none" pgwide="1" id="media-link-flag"> | ||||
|       <title>Media link flags</title> | ||||
|       <tgroup cols="2"> | ||||
|         <colspec colname="c1"/> | ||||
|         <colspec colname="c2"/> | ||||
| 	<tbody valign="top"> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_LNK_FL_ENABLED</constant></entry> | ||||
| 	    <entry>The link is enabled and can be used to transfer media data. | ||||
| 	    When two or more links target a sink pad, only one of them can be | ||||
| 	    enabled at a time.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_LNK_FL_IMMUTABLE</constant></entry> | ||||
| 	    <entry>The link enabled state can't be modified at runtime. An | ||||
| 	    immutable link is always enabled.</entry> | ||||
| 	  </row> | ||||
| 	  <row> | ||||
| 	    <entry><constant>MEDIA_LNK_FL_DYNAMIC</constant></entry> | ||||
| 	    <entry>The link enabled state can be modified during streaming. This | ||||
| 	    flag is set by drivers and is read-only for applications.</entry> | ||||
| 	  </row> | ||||
| 	</tbody> | ||||
|       </tgroup> | ||||
|     </table> | ||||
|     <para>One and only one of <constant>MEDIA_PAD_FL_SINK</constant> and | ||||
|     <constant>MEDIA_PAD_FL_SOURCE</constant> must be set for every pad.</para> | ||||
|   </refsect1> | ||||
| 
 | ||||
|   <refsect1> | ||||
|     &return-value; | ||||
| 
 | ||||
|     <variablelist> | ||||
|       <varlistentry> | ||||
| 	<term><errorcode>EINVAL</errorcode></term> | ||||
| 	<listitem> | ||||
| 	  <para>The &media-links-enum; <structfield>id</structfield> references | ||||
| 	  a non-existing entity.</para> | ||||
| 	</listitem> | ||||
|       </varlistentry> | ||||
|     </variablelist> | ||||
|   </refsect1> | ||||
| </refentry> | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 awab228
						awab228