~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/userspace-api/media/v4l/vidioc-subdev-g-routing.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/userspace-api/media/v4l/vidioc-subdev-g-routing.rst (Version linux-6.12-rc7) and /Documentation/userspace-api/media/v4l/vidioc-subdev-g-routing.rst (Version linux-5.19.17)


  1 .. SPDX-License-Identifier: GFDL-1.1-no-invari    
  2 .. c:namespace:: V4L                              
  3                                                   
  4 .. _VIDIOC_SUBDEV_G_ROUTING:                      
  5                                                   
  6 **********************************************    
  7 ioctl VIDIOC_SUBDEV_G_ROUTING, VIDIOC_SUBDEV_S    
  8 **********************************************    
  9                                                   
 10 Name                                              
 11 ====                                              
 12                                                   
 13 VIDIOC_SUBDEV_G_ROUTING - VIDIOC_SUBDEV_S_ROUT    
 14                                                   
 15                                                   
 16 Synopsis                                          
 17 ========                                          
 18                                                   
 19 .. c:macro:: VIDIOC_SUBDEV_G_ROUTING              
 20                                                   
 21 ``int ioctl(int fd, VIDIOC_SUBDEV_G_ROUTING, s    
 22                                                   
 23 .. c:macro:: VIDIOC_SUBDEV_S_ROUTING              
 24                                                   
 25 ``int ioctl(int fd, VIDIOC_SUBDEV_S_ROUTING, s    
 26                                                   
 27 Arguments                                         
 28 =========                                         
 29                                                   
 30 ``fd``                                            
 31     File descriptor returned by :ref:`open() <    
 32                                                   
 33 ``argp``                                          
 34     Pointer to struct :c:type:`v4l2_subdev_rou    
 35                                                   
 36                                                   
 37 Description                                       
 38 ===========                                       
 39                                                   
 40 These ioctls are used to get and set the routi    
 41 The routing configuration determines the flows    
 42                                                   
 43 Drivers report their current routing tables us    
 44 ``VIDIOC_SUBDEV_G_ROUTING`` ioctl and applicat    
 45 with the ``VIDIOC_SUBDEV_S_ROUTING`` ioctl, by    
 46 setting or clearing flags of the ``flags`` fie    
 47 :c:type:`v4l2_subdev_route`. Similarly to ``VI    
 48 ``VIDIOC_SUBDEV_S_ROUTING`` returns the routes    
 49                                                   
 50 All stream configurations are reset when ``VID    
 51 This means that the userspace must reconfigure    
 52 after calling the ioctl with e.g. ``VIDIOC_SUB    
 53                                                   
 54 Only subdevices which have both sink and sourc    
 55                                                   
 56 The ``len_routes`` field indicates the number     
 57 ``routes`` array allocated by userspace. It is    
 58 ioctls to indicate how many routes the kernel     
 59 by the kernel.                                    
 60                                                   
 61 The ``num_routes`` field indicates the number     
 62 table. For ``VIDIOC_SUBDEV_S_ROUTING``, it is     
 63 routes that the application stored in the ``ro    
 64 is returned by the kernel and indicates how ma    
 65 subdevice routing table. This may be smaller o    
 66 ``num_routes`` set by the application for ``VI    
 67 drivers may adjust the requested routing table    
 68                                                   
 69 The kernel can return a ``num_routes`` value l    
 70 both ioctls. This indicates thare are more rou    
 71 the ``routes`` array. In this case, the ``rout    
 72 with the first ``len_routes`` entries of the s    
 73 not considered to be an error, and the ioctl c    
 74 wants to retrieve the missing routes, it can i    
 75 ``VIDIOC_SUBDEV_G_ROUTING`` call with a large     
 76                                                   
 77 ``VIDIOC_SUBDEV_S_ROUTING`` may return more ro    
 78 ``num_routes`` field due to e.g. hardware prop    
 79                                                   
 80 .. tabularcolumns:: |p{4.4cm}|p{4.4cm}|p{8.7cm    
 81                                                   
 82 .. c:type:: v4l2_subdev_routing                   
 83                                                   
 84 .. flat-table:: struct v4l2_subdev_routing        
 85     :header-rows:  0                              
 86     :stub-columns: 0                              
 87     :widths:       1 1 2                          
 88                                                   
 89     * - __u32                                     
 90       - ``which``                                 
 91       - Routing table to be accessed, from enu    
 92         :ref:`v4l2_subdev_format_whence <v4l2-    
 93     * - __u32                                     
 94       - ``len_routes``                            
 95       - The length of the array (as in memory     
 96     * - struct :c:type:`v4l2_subdev_route`        
 97       - ``routes[]``                              
 98       - Array of struct :c:type:`v4l2_subdev_r    
 99     * - __u32                                     
100       - ``num_routes``                            
101       - Number of entries of the routes array     
102     * - __u32                                     
103       - ``reserved``\ [11]                        
104       - Reserved for future extensions. Applic    
105         the array to zero.                        
106                                                   
107 .. tabularcolumns:: |p{4.4cm}|p{4.4cm}|p{8.7cm    
108                                                   
109 .. c:type:: v4l2_subdev_route                     
110                                                   
111 .. flat-table:: struct v4l2_subdev_route          
112     :header-rows:  0                              
113     :stub-columns: 0                              
114     :widths:       1 1 2                          
115                                                   
116     * - __u32                                     
117       - ``sink_pad``                              
118       - Sink pad number.                          
119     * - __u32                                     
120       - ``sink_stream``                           
121       - Sink pad stream number.                   
122     * - __u32                                     
123       - ``source_pad``                            
124       - Source pad number.                        
125     * - __u32                                     
126       - ``source_stream``                         
127       - Source pad stream number.                 
128     * - __u32                                     
129       - ``flags``                                 
130       - Route enable/disable flags                
131         :ref:`v4l2_subdev_routing_flags <v4l2-    
132     * - __u32                                     
133       - ``reserved``\ [5]                         
134       - Reserved for future extensions. Applic    
135         the array to zero.                        
136                                                   
137 .. tabularcolumns:: |p{6.6cm}|p{2.2cm}|p{8.7cm    
138                                                   
139 .. _v4l2-subdev-routing-flags:                    
140                                                   
141 .. flat-table:: enum v4l2_subdev_routing_flags    
142     :header-rows:  0                              
143     :stub-columns: 0                              
144     :widths:       3 1 4                          
145                                                   
146     * - V4L2_SUBDEV_ROUTE_FL_ACTIVE               
147       - 0x0001                                    
148       - The route is enabled. Set by applicati    
149                                                   
150 Return Value                                      
151 ============                                      
152                                                   
153 On success 0 is returned, on error -1 and the     
154 appropriately. The generic error codes are des    
155 :ref:`Generic Error Codes <gen-errors>` chapte    
156                                                   
157 EINVAL                                            
158    The sink or source pad identifiers referenc    
159    pads of different types (ie. the sink_pad i    
160    pad), or the ``which`` field has an unsuppo    
161                                                   
162 E2BIG                                             
163    The application provided ``num_routes`` for    
164    larger than the number of routes the driver    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php