1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef __MSMB_ISP__
20 #define __MSMB_ISP__
21 #include <linux/videodev2.h>
22 #define MAX_PLANES_PER_STREAM 3
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define MAX_NUM_STREAM 7
25 #define ISP_VERSION_40 40
26 #define ISP_VERSION_32 32
27 #define ISP_NATIVE_BUF_BIT (0x10000 << 0)
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 #define ISP0_BIT (0x10000 << 1)
30 #define ISP1_BIT (0x10000 << 2)
31 #define ISP_META_CHANNEL_BIT (0x10000 << 3)
32 #define ISP_SCRATCH_BUF_BIT (0x10000 << 4)
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 #define ISP_STATS_STREAM_BIT 0x80000000
35 enum ISP_START_PIXEL_PATTERN {
36  ISP_BAYER_RGRGRG,
37  ISP_BAYER_GRGRGR,
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  ISP_BAYER_BGBGBG,
40  ISP_BAYER_GBGBGB,
41  ISP_YUV_YCbYCr,
42  ISP_YUV_YCrYCb,
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44  ISP_YUV_CbYCrY,
45  ISP_YUV_CrYCbY,
46  ISP_PIX_PATTERN_MAX
47 };
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 enum msm_vfe_plane_fmt {
50  Y_PLANE,
51  CB_PLANE,
52  CR_PLANE,
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  CRCB_PLANE,
55  CBCR_PLANE,
56  VFE_PLANE_FMT_MAX
57 };
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 enum msm_vfe_input_src {
60  VFE_PIX_0,
61  VFE_RAW_0,
62  VFE_RAW_1,
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64  VFE_RAW_2,
65  VFE_SRC_MAX,
66 };
67 enum msm_vfe_axi_stream_src {
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69  PIX_ENCODER,
70  PIX_VIEWFINDER,
71  CAMIF_RAW,
72  IDEAL_RAW,
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74  RDI_INTF_0,
75  RDI_INTF_1,
76  RDI_INTF_2,
77  VFE_AXI_SRC_MAX
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 };
80 enum msm_vfe_frame_skip_pattern {
81  NO_SKIP,
82  EVERY_2FRAME,
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84  EVERY_3FRAME,
85  EVERY_4FRAME,
86  EVERY_5FRAME,
87  EVERY_6FRAME,
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89  EVERY_7FRAME,
90  EVERY_8FRAME,
91  EVERY_16FRAME,
92  EVERY_32FRAME,
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94  SKIP_ALL,
95  MAX_SKIP,
96 };
97 enum msm_vfe_camif_input {
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99  CAMIF_DISABLED,
100  CAMIF_PAD_REG_INPUT,
101  CAMIF_MIDDI_INPUT,
102  CAMIF_MIPI_INPUT,
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 };
105 struct msm_vfe_camif_cfg {
106  uint32_t lines_per_frame;
107  uint32_t pixels_per_line;
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109  uint32_t first_pixel;
110  uint32_t last_pixel;
111  uint32_t first_line;
112  uint32_t last_line;
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114  uint32_t epoch_line0;
115  uint32_t epoch_line1;
116  enum msm_vfe_camif_input camif_input;
117 };
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 enum msm_vfe_inputmux {
120  CAMIF,
121  TESTGEN,
122  EXTERNAL_READ,
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 };
125 struct msm_vfe_pix_cfg {
126  struct msm_vfe_camif_cfg camif_cfg;
127  enum msm_vfe_inputmux input_mux;
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129  enum ISP_START_PIXEL_PATTERN pixel_pattern;
130 };
131 struct msm_vfe_rdi_cfg {
132  uint8_t cid;
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134  uint8_t frame_based;
135 };
136 struct msm_vfe_input_cfg {
137  union {
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139  struct msm_vfe_pix_cfg pix_cfg;
140  struct msm_vfe_rdi_cfg rdi_cfg;
141  } d;
142  enum msm_vfe_input_src input_src;
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144  uint32_t input_pix_clk;
145 };
146 struct msm_vfe_axi_plane_cfg {
147  uint32_t output_width;
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149  uint32_t output_height;
150  uint32_t output_stride;
151  uint32_t output_scan_lines;
152  uint32_t output_plane_format;
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154  uint32_t plane_addr_offset;
155  uint8_t csid_src;
156  uint8_t rdi_cid;
157 };
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 struct msm_vfe_axi_stream_request_cmd {
160  uint32_t session_id;
161  uint32_t stream_id;
162  uint32_t output_format;
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164  enum msm_vfe_axi_stream_src stream_src;
165  struct msm_vfe_axi_plane_cfg plane_cfg[MAX_PLANES_PER_STREAM];
166  uint32_t burst_count;
167  uint32_t hfr_mode;
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169  uint8_t frame_base;
170  uint32_t init_frame_drop;
171  enum msm_vfe_frame_skip_pattern frame_skip_pattern;
172  uint8_t buf_divert;
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174  uint32_t axi_stream_handle;
175 };
176 struct msm_vfe_axi_stream_release_cmd {
177  uint32_t stream_handle;
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 };
180 enum msm_vfe_axi_stream_cmd {
181  STOP_STREAM,
182  START_STREAM,
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 };
185 struct msm_vfe_axi_stream_cfg_cmd {
186  uint8_t num_streams;
187  uint32_t stream_handle[MAX_NUM_STREAM];
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189  enum msm_vfe_axi_stream_cmd cmd;
190 };
191 enum msm_vfe_axi_stream_update_type {
192  ENABLE_STREAM_BUF_DIVERT,
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194  DISABLE_STREAM_BUF_DIVERT,
195  UPDATE_STREAM_FRAMEDROP_PATTERN,
196  UPDATE_STREAM_REQUEST_FRAMES,
197 };
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 struct msm_vfe_axi_stream_update_cmd {
200  uint32_t stream_handle;
201  enum msm_vfe_axi_stream_update_type update_type;
202  enum msm_vfe_frame_skip_pattern skip_pattern;
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204  uint32_t request_frm_num;
205 };
206 enum msm_isp_stats_type {
207  MSM_ISP_STATS_AEC,
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209  MSM_ISP_STATS_AF,
210  MSM_ISP_STATS_AWB,
211  MSM_ISP_STATS_RS,
212  MSM_ISP_STATS_CS,
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214  MSM_ISP_STATS_IHIST,
215  MSM_ISP_STATS_SKIN,
216  MSM_ISP_STATS_BG,
217  MSM_ISP_STATS_BF,
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219  MSM_ISP_STATS_BE,
220  MSM_ISP_STATS_BHIST,
221  MSM_ISP_STATS_MAX
222 };
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 struct msm_vfe_stats_stream_request_cmd {
225  uint32_t session_id;
226  uint32_t stream_id;
227  enum msm_isp_stats_type stats_type;
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229  uint32_t composite_flag;
230  uint32_t framedrop_pattern;
231  uint32_t irq_subsample_pattern;
232  uint32_t buffer_offset;
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234  uint32_t stream_handle;
235 };
236 struct msm_vfe_stats_stream_release_cmd {
237  uint32_t stream_handle;
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239 };
240 struct msm_vfe_stats_stream_cfg_cmd {
241  uint8_t num_streams;
242  uint32_t stream_handle[MSM_ISP_STATS_MAX];
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244  uint8_t enable;
245 };
246 enum msm_vfe_reg_cfg_type {
247  VFE_WRITE,
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249  VFE_WRITE_MB,
250  VFE_READ,
251  VFE_CFG_MASK,
252  VFE_WRITE_DMI_16BIT,
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254  VFE_WRITE_DMI_32BIT,
255  VFE_WRITE_DMI_64BIT,
256  VFE_READ_DMI_16BIT,
257  VFE_READ_DMI_32BIT,
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259  VFE_READ_DMI_64BIT,
260 };
261 struct msm_vfe_cfg_cmd2 {
262  uint16_t num_cfg;
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264  uint16_t cmd_len;
265  void __user *cfg_data;
266  void __user *cfg_cmd;
267 };
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269 struct msm_vfe_reg_rw_info {
270  uint32_t reg_offset;
271  uint32_t cmd_data_offset;
272  uint32_t len;
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274 };
275 struct msm_vfe_reg_mask_info {
276  uint32_t reg_offset;
277  uint32_t mask;
278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279  uint32_t val;
280 };
281 struct msm_vfe_reg_dmi_info {
282  uint32_t hi_tbl_offset;
283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284  uint32_t lo_tbl_offset;
285  uint32_t len;
286 };
287 struct msm_vfe_reg_cfg_cmd {
288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289  union {
290  struct msm_vfe_reg_rw_info rw_info;
291  struct msm_vfe_reg_mask_info mask_info;
292  struct msm_vfe_reg_dmi_info dmi_info;
293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294  } u;
295  enum msm_vfe_reg_cfg_type cmd_type;
296 };
297 enum msm_isp_buf_type {
298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299  ISP_PRIVATE_BUF,
300  ISP_SHARE_BUF,
301  MAX_ISP_BUF_TYPE,
302 };
303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 struct msm_isp_buf_request {
305  uint32_t session_id;
306  uint32_t stream_id;
307  uint8_t num_buf;
308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309  uint32_t handle;
310  enum msm_isp_buf_type buf_type;
311 };
312 struct msm_isp_qbuf_info {
313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314  uint32_t handle;
315  int buf_idx;
316  struct v4l2_buffer buffer;
317  uint32_t dirty_buf;
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319 };
320 struct msm_vfe_axi_src_state {
321  enum msm_vfe_input_src input_src;
322  uint32_t src_active;
323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324 };
325 enum msm_isp_event_idx {
326  ISP_REG_UPDATE = 0,
327  ISP_START_ACK = 1,
328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329  ISP_STOP_ACK = 2,
330  ISP_IRQ_VIOLATION = 3,
331  ISP_WM_BUS_OVERFLOW = 4,
332  ISP_STATS_OVERFLOW = 5,
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334  ISP_CAMIF_ERROR = 6,
335  ISP_SOF = 7,
336  ISP_EOF = 8,
337  ISP_EVENT_MAX = 9
338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339 };
340 #define ISP_EVENT_OFFSET 8
341 #define ISP_EVENT_BASE (V4L2_EVENT_PRIVATE_START)
342 #define ISP_BUF_EVENT_BASE (ISP_EVENT_BASE + (1 << ISP_EVENT_OFFSET))
343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344 #define ISP_STATS_EVENT_BASE (ISP_EVENT_BASE + (2 << ISP_EVENT_OFFSET))
345 #define ISP_EVENT_REG_UPDATE (ISP_EVENT_BASE + ISP_REG_UPDATE)
346 #define ISP_EVENT_START_ACK (ISP_EVENT_BASE + ISP_START_ACK)
347 #define ISP_EVENT_STOP_ACK (ISP_EVENT_BASE + ISP_STOP_ACK)
348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349 #define ISP_EVENT_IRQ_VIOLATION (ISP_EVENT_BASE + ISP_IRQ_VIOLATION)
350 #define ISP_EVENT_WM_BUS_OVERFLOW (ISP_EVENT_BASE + ISP_WM_BUS_OVERFLOW)
351 #define ISP_EVENT_STATS_OVERFLOW (ISP_EVENT_BASE + ISP_STATS_OVERFLOW)
352 #define ISP_EVENT_CAMIF_ERROR (ISP_EVENT_BASE + ISP_CAMIF_ERROR)
353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354 #define ISP_EVENT_SOF (ISP_EVENT_BASE + ISP_SOF)
355 #define ISP_EVENT_EOF (ISP_EVENT_BASE + ISP_EOF)
356 #define ISP_EVENT_BUF_DIVERT (ISP_BUF_EVENT_BASE)
357 #define ISP_EVENT_STATS_NOTIFY (ISP_STATS_EVENT_BASE)
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359 #define ISP_EVENT_COMP_STATS_NOTIFY (ISP_EVENT_STATS_NOTIFY + MSM_ISP_STATS_MAX)
360 struct msm_isp_buf_event {
361  uint32_t session_id;
362  uint32_t stream_id;
363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364  uint32_t handle;
365  int8_t buf_idx;
366 };
367 struct msm_isp_stats_event {
368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369  uint32_t stats_mask;
370  uint8_t stats_buf_idxs[MSM_ISP_STATS_MAX];
371 };
372 struct msm_isp_stream_ack {
373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374  uint32_t session_id;
375  uint32_t stream_id;
376  uint32_t handle;
377 };
378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379 struct msm_isp_event_data {
380  struct timeval timestamp;
381  struct timeval mono_timestamp;
382  uint32_t frame_id;
383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384  union {
385  struct msm_isp_stream_ack stream_ack;
386  enum msm_vfe_input_src input_src;
387  struct msm_isp_stats_event stats;
388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389  uint32_t irq_status_mask;
390  struct msm_isp_buf_event buf_done;
391  } u;
392 };
393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394 #define V4L2_PIX_FMT_QBGGR8 v4l2_fourcc('Q', 'B', 'G', '8')
395 #define V4L2_PIX_FMT_QGBRG8 v4l2_fourcc('Q', 'G', 'B', '8')
396 #define V4L2_PIX_FMT_QGRBG8 v4l2_fourcc('Q', 'G', 'R', '8')
397 #define V4L2_PIX_FMT_QRGGB8 v4l2_fourcc('Q', 'R', 'G', '8')
398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399 #define V4L2_PIX_FMT_QBGGR10 v4l2_fourcc('Q', 'B', 'G', '0')
400 #define V4L2_PIX_FMT_QGBRG10 v4l2_fourcc('Q', 'G', 'B', '0')
401 #define V4L2_PIX_FMT_QGRBG10 v4l2_fourcc('Q', 'G', 'R', '0')
402 #define V4L2_PIX_FMT_QRGGB10 v4l2_fourcc('Q', 'R', 'G', '0')
403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404 #define V4L2_PIX_FMT_QBGGR12 v4l2_fourcc('Q', 'B', 'G', '2')
405 #define V4L2_PIX_FMT_QGBRG12 v4l2_fourcc('Q', 'G', 'B', '2')
406 #define V4L2_PIX_FMT_QGRBG12 v4l2_fourcc('Q', 'G', 'R', '2')
407 #define V4L2_PIX_FMT_QRGGB12 v4l2_fourcc('Q', 'R', 'G', '2')
408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409 #define VIDIOC_MSM_VFE_REG_CFG   _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_vfe_cfg_cmd2)
410 #define VIDIOC_MSM_ISP_REQUEST_BUF   _IOWR('V', BASE_VIDIOC_PRIVATE+1, struct msm_isp_buf_request)
411 #define VIDIOC_MSM_ISP_ENQUEUE_BUF   _IOWR('V', BASE_VIDIOC_PRIVATE+2, struct msm_isp_qbuf_info)
412 #define VIDIOC_MSM_ISP_RELEASE_BUF   _IOWR('V', BASE_VIDIOC_PRIVATE+3, struct msm_isp_buf_request)
413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414 #define VIDIOC_MSM_ISP_REQUEST_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+4, struct msm_vfe_axi_stream_request_cmd)
415 #define VIDIOC_MSM_ISP_CFG_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+5, struct msm_vfe_axi_stream_cfg_cmd)
416 #define VIDIOC_MSM_ISP_RELEASE_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+6, struct msm_vfe_axi_stream_release_cmd)
417 #define VIDIOC_MSM_ISP_INPUT_CFG   _IOWR('V', BASE_VIDIOC_PRIVATE+7, struct msm_vfe_input_cfg)
418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419 #define VIDIOC_MSM_ISP_SET_SRC_STATE   _IOWR('V', BASE_VIDIOC_PRIVATE+8, struct msm_vfe_axi_src_state)
420 #define VIDIOC_MSM_ISP_REQUEST_STATS_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+9,   struct msm_vfe_stats_stream_request_cmd)
421 #define VIDIOC_MSM_ISP_CFG_STATS_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+10, struct msm_vfe_stats_stream_cfg_cmd)
422 #define VIDIOC_MSM_ISP_RELEASE_STATS_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+11,   struct msm_vfe_stats_stream_release_cmd)
423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424 #define VIDIOC_MSM_ISP_UPDATE_STREAM   _IOWR('V', BASE_VIDIOC_PRIVATE+13, struct msm_vfe_axi_stream_update_cmd)
425 #endif
426