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 __MSM_VIDC_H__
20 #define __MSM_VIDC_H__
21 #include <linux/types.h>
22 #define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12 0x2
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12_UBWC 0x8002
25 struct msm_vidc_extradata_header {
26   unsigned int size;
27   unsigned int : 32;
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29   unsigned int : 32;
30   unsigned int type;
31   unsigned int data_size;
32   unsigned char data[1];
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 };
35 struct msm_vidc_interlace_payload {
36   unsigned int format;
37   unsigned int color_format;
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 };
40 struct msm_vidc_framerate_payload {
41   unsigned int frame_rate;
42 };
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 struct msm_vidc_ts_payload {
45   unsigned int timestamp_lo;
46   unsigned int timestamp_hi;
47 };
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 struct msm_vidc_concealmb_payload {
50   unsigned int num_mbs;
51 };
52 struct msm_vidc_recoverysei_payload {
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54   unsigned int flags;
55 };
56 struct msm_vidc_aspect_ratio_payload {
57   unsigned int size;
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59   unsigned int version;
60   unsigned int port_index;
61   unsigned int aspect_width;
62   unsigned int aspect_height;
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 };
65 struct msm_vidc_mpeg2_seqdisp_payload {
66   unsigned int video_format;
67   unsigned int color_descp;
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69   unsigned int color_primaries;
70   unsigned int transfer_char;
71   unsigned int matrix_coeffs;
72   unsigned int disp_width;
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74   unsigned int disp_height;
75 };
76 struct msm_vidc_input_crop_payload {
77   unsigned int size;
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79   unsigned int version;
80   unsigned int port_index;
81   unsigned int left;
82   unsigned int top;
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84   unsigned int width;
85   unsigned int height;
86 };
87 struct msm_vidc_digital_zoom_payload {
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89   unsigned int size;
90   unsigned int version;
91   unsigned int port_index;
92   unsigned int zoom_width;
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94   unsigned int zoom_height;
95 };
96 struct msm_vidc_extradata_index {
97   unsigned int type;
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99   union {
100     struct msm_vidc_input_crop_payload input_crop;
101     struct msm_vidc_digital_zoom_payload digital_zoom;
102     struct msm_vidc_aspect_ratio_payload aspect_ratio;
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104   };
105 };
106 struct msm_vidc_panscan_window {
107   unsigned int panscan_height_offset;
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109   unsigned int panscan_width_offset;
110   unsigned int panscan_window_width;
111   unsigned int panscan_window_height;
112 };
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 struct msm_vidc_panscan_window_payload {
115   unsigned int num_panscan_windows;
116   struct msm_vidc_panscan_window wnd[1];
117 };
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 struct msm_vidc_stream_userdata_payload {
120   unsigned int type;
121   unsigned int data[1];
122 };
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 struct msm_vidc_frame_qp_payload {
125   unsigned int frame_qp;
126 };
127 struct msm_vidc_frame_bits_info_payload {
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129   unsigned int frame_bits;
130   unsigned int header_bits;
131 };
132 struct msm_vidc_s3d_frame_packing_payload {
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134   unsigned int fpa_id;
135   unsigned int cancel_flag;
136   unsigned int fpa_type;
137   unsigned int quin_cunx_flag;
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139   unsigned int content_interprtation_type;
140   unsigned int spatial_flipping_flag;
141   unsigned int frame0_flipped_flag;
142   unsigned int field_views_flag;
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144   unsigned int current_frame_is_frame0_flag;
145   unsigned int frame0_self_contained_flag;
146   unsigned int frame1_self_contained_flag;
147   unsigned int frame0_graid_pos_x;
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149   unsigned int frame0_graid_pos_y;
150   unsigned int frame1_graid_pos_x;
151   unsigned int frame1_graid_pos_y;
152   unsigned int fpa_reserved_byte;
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154   unsigned int fpa_repetition_period;
155   unsigned int fpa_extension_flag;
156 };
157 struct msm_vidc_vqzip_sei_payload {
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159   unsigned int size;
160   unsigned int data[1];
161 };
162 struct msm_vidc_yuv_stats_payload {
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164   unsigned int frame_qp;
165   unsigned int texture;
166   unsigned int luma_in_q16;
167   unsigned int frame_difference;
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169 };
170 struct msm_vidc_roi_qp_payload {
171   int upper_qp_offset;
172   int lower_qp_offset;
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174   unsigned int b_roi_info;
175   int mbi_info_size;
176   unsigned int data[1];
177 };
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 enum msm_vidc_extradata_type {
180   MSM_VIDC_EXTRADATA_NONE = 0x00000000,
181   MSM_VIDC_EXTRADATA_MB_QUANTIZATION = 0x00000001,
182   MSM_VIDC_EXTRADATA_INTERLACE_VIDEO = 0x00000002,
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184   MSM_VIDC_EXTRADATA_VC1_FRAMEDISP = 0x00000003,
185   MSM_VIDC_EXTRADATA_VC1_SEQDISP = 0x00000004,
186   MSM_VIDC_EXTRADATA_TIMESTAMP = 0x00000005,
187   MSM_VIDC_EXTRADATA_S3D_FRAME_PACKING = 0x00000006,
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189   MSM_VIDC_EXTRADATA_FRAME_RATE = 0x00000007,
190   MSM_VIDC_EXTRADATA_PANSCAN_WINDOW = 0x00000008,
191   MSM_VIDC_EXTRADATA_RECOVERY_POINT_SEI = 0x00000009,
192   MSM_VIDC_EXTRADATA_MPEG2_SEQDISP = 0x0000000D,
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194   MSM_VIDC_EXTRADATA_STREAM_USERDATA = 0x0000000E,
195   MSM_VIDC_EXTRADATA_FRAME_QP = 0x0000000F,
196   MSM_VIDC_EXTRADATA_FRAME_BITS_INFO = 0x00000010,
197   MSM_VIDC_EXTRADATA_VQZIP_SEI = 0x00000011,
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199   MSM_VIDC_EXTRADATA_ROI_QP = 0x00000013,
200   MSM_VIDC_EXTRADATA_INPUT_CROP = 0x0700000E,
201   MSM_VIDC_EXTRADATA_DIGITAL_ZOOM = 0x07000010,
202   MSM_VIDC_EXTRADATA_MULTISLICE_INFO = 0x7F100000,
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204   MSM_VIDC_EXTRADATA_NUM_CONCEALED_MB = 0x7F100001,
205   MSM_VIDC_EXTRADATA_INDEX = 0x7F100002,
206   MSM_VIDC_EXTRADATA_ASPECT_RATIO = 0x7F100003,
207   MSM_VIDC_EXTRADATA_METADATA_LTR = 0x7F100004,
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209   MSM_VIDC_EXTRADATA_METADATA_FILLER = 0x7FE00002,
210   MSM_VIDC_EXTRADATA_METADATA_MBI = 0x7F100005,
211   MSM_VIDC_EXTRADATA_YUVSTATS_INFO = 0x7F100007,
212 };
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214 enum msm_vidc_interlace_type {
215   MSM_VIDC_INTERLACE_FRAME_PROGRESSIVE = 0x01,
216   MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_TOPFIELDFIRST = 0x02,
217   MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_BOTTOMFIELDFIRST = 0x04,
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219   MSM_VIDC_INTERLACE_FRAME_TOPFIELDFIRST = 0x08,
220   MSM_VIDC_INTERLACE_FRAME_BOTTOMFIELDFIRST = 0x10,
221 };
222 #define MSM_VIDC_FRAMEPACK_CHECKERBOARD 0x00
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 #define MSM_VIDC_FRAMEPACK_COLUMN_INTERLEAVE 0x01
225 #define MSM_VIDC_FRAMEPACK_ROW_INTERLEAVE 0x02
226 #define MSM_VIDC_FRAMEPACK_SIDE_BY_SIDE 0x03
227 #define MSM_VIDC_FRAMEPACK_TOP_BOTTOM 0x04
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229 #define MSM_VIDC_FRAMEPACK_TEMPORAL_INTERLEAVE 0x05
230 enum msm_vidc_recovery_sei {
231   MSM_VIDC_FRAME_RECONSTRUCTION_INCORRECT = 0x0,
232   MSM_VIDC_FRAME_RECONSTRUCTION_CORRECT = 0x01,
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234   MSM_VIDC_FRAME_RECONSTRUCTION_APPROXIMATELY_CORRECT = 0x02,
235 };
236 enum msm_vidc_userdata_type {
237   MSM_VIDC_USERDATA_TYPE_FRAME = 0x1,
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239   MSM_VIDC_USERDATA_TYPE_TOP_FIELD = 0x2,
240   MSM_VIDC_USERDATA_TYPE_BOTTOM_FIELD = 0x3,
241 };
242 enum msm_vidc_pixel_depth {
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244   MSM_VIDC_BIT_DEPTH_8,
245   MSM_VIDC_BIT_DEPTH_10,
246   MSM_VIDC_BIT_DEPTH_UNSUPPORTED = 0XFFFFFFFF,
247 };
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249 #endif
250 
251