source: svn/trunk/newcon3bcm2_21bu/magnum/commonutils/fmt/bfmt.c @ 37

Last change on this file since 37 was 2, checked in by jglee, 11 years ago

first commit

  • Property svn:executable set to *
File size: 62.3 KB
Line 
1/***************************************************************************
2 *     Copyright (c) 2003-2011, Broadcom Corporation
3 *     All Rights Reserved
4 *     Confidential Property of Broadcom Corporation
5 *
6 *  THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
7 *  AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
8 *  EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
9 *
10 * $brcm_Workfile: bfmt.c $
11 * $brcm_Revision: Hydra_Software_Devel/107 $
12 * $brcm_Date: 10/7/11 4:09p $
13 *
14 * Module Description:
15 *   Video format module header file
16 *
17 * Revision History:
18 *
19 * $brcm_Log: /magnum/commonutils/fmt/bfmt.c $
20 *
21 * Hydra_Software_Devel/107   10/7/11 4:09p yuxiaz
22 * SW7425-974: Added new high pixel rate formats.
23 *
24 * Hydra_Software_Devel/106   3/17/11 6:09p tdo
25 * SW7422-391: Incorrect VertRefreshRate return and add support for PAL 60
26 * to allow multi rate
27 *
28 * Hydra_Software_Devel/105   12/21/10 11:03a tdo
29 * SW7422-28: Change the size for 3D format to 1 eye window
30 *
31 * Hydra_Software_Devel/104   12/9/10 2:16p pntruong
32 * SW35230-2250: Merged to mainline.
33 *
34 * Hydra_Software_Devel/103   9/7/10 3:03p yuxiaz
35 * SW7422-28: Add 3D formats to FMT plus additional data structures
36 *
37 * Hydra_Software_Devel/SW7422-28/2   9/3/10 11:47a yuxiaz
38 * SW7422-28: Rename BFMT_VideoFmt_e3D_1080p_30Hz  to
39 * BFMT_VideoFmt_e1080p_30Hz_3DOU_AS.
40 *
41 * Hydra_Software_Devel/SW7422-28/1   9/2/10 4:08p yuxiaz
42 * SW7422-28: Add 3D formats to FMT plus additional data structures
43 *
44 * Hydra_Software_Devel/102   9/7/10 5:38p zhang
45 * SW35230-1039: Reverted check-in from Hydra. Will branch for 35230
46 * instead.
47 *
48 * Hydra_Software_Devel/101   9/3/10 5:55p zhang
49 * SW35230-1039: Added 3 custom 3D formats to support special timing for
50 * output to BCM35425.
51 *
52 * Hydra_Software_Devel/100   7/13/10 11:27a yuxiaz
53 * SW3548-2987: Added new 1080p@30hz support for 3DTV.
54 *
55 * Hydra_Software_Devel/99   5/20/10 5:47p darnstein
56 * SW7125-326: add vertical frequency for 720P@30Hz video.
57 *
58 * Hydra_Software_Devel/98   5/20/10 4:29p darnstein
59 * SW7125-326: Fix problem with pixel frequencies for 720P@50Hz.
60 *
61 * Hydra_Software_Devel/97   5/14/10 2:12p hongtaoz
62 * SW3548-2680: fixed ulScanWidth of 2160i48;
63 *
64 * Hydra_Software_Devel/96   4/12/10 2:03p tdo
65 * SW7420-673: add multi-frame rate support to SD
66 *
67 * Hydra_Software_Devel/95   4/9/10 3:20p tdo
68 * SW7420-673: add multi-frame rate support to SD
69 *
70 * Hydra_Software_Devel/94   2/23/10 3:49p pntruong
71 * SW3548-2764: Allows 2x oversample 480p/576p for hdmi input.
72 *
73 * Hydra_Software_Devel/93   2/10/10 1:25p pntruong
74 * SW3548-2350: Updated line per frame for some of the format to match the
75 * spreadsheet.
76 *
77 * Hydra_Software_Devel/92   2/1/10 6:34p hongtaoz
78 * SW3548-2678, SW3548-2680, SW3548-2681: added HDMI1.4 3D formats support
79 * for 3548; added multi-buffer low delay mode support for 1to2 and 2to5
80 * rate gap cases; reduced capture buffer allocation for interlaced
81 * pulldown case;
82 *
83 * Hydra_Software_Devel/BCM3D/4   1/29/10 6:55p hongtaoz
84 * SW3548-2680, SW3548-2681: removed 1470p custom formats since they are
85 * the same as 720p3D formats; added macro to wrap the 3548 specific
86 * legacy 3DTV format;
87 *
88 * Hydra_Software_Devel/BCM3D/3   1/15/10 6:33p hongtaoz
89 * SW3548-2680, SW3548-2681: added custom formats to support HDMI 1.4 3D
90 * 720p50/60 input passed-thru to external panel processor; reanmed 2160i
91 * to custom DVI format;
92 *
93 * Hydra_Software_Devel/BCM3D/2   1/15/10 4:54p hongtaoz
94 * SW3548-2680, SW3548-2681: added new HDMI1.4 3D formats 720p50 input
95 * support; fixed pixel frequency value for 3D formats;
96 *
97 * Hydra_Software_Devel/BCM3D/1   12/17/09 5:55p hongtaoz
98 * SW3548-2680, SW3548-2681: added new HDMI1.4 3D formats 720p60 and
99 * 1080p24; added a special display format 2160i48 for 11-bit BVN;
100 *
101 * Hydra_Software_Devel/91   1/27/10 5:50p pntruong
102 * SW3556-1027: Corrected the refresh pal_m, pal_60, and default blank.
103 *
104 * Hydra_Software_Devel/90   12/15/09 2:16p pntruong
105 * SW3556-933: Display no signal when input signal is 1440x480@60Hz.
106 *
107 * Hydra_Software_Devel/89   10/16/09 5:21p darnstein
108 * SW7405-3191: Back out all changes in pixel frequency handling. New
109 * design coming soon.
110 *
111 * Hydra_Software_Devel/88   10/15/09 5:37p darnstein
112 * SW7405-3191: Previous check-in clobbered one of the pixel frequencies.
113 *
114 * Hydra_Software_Devel/87   10/15/09 4:53p darnstein
115 * SW7405-3191: Pixel frequency is now defined as both a bitmask, and an
116 * enum. The bitmask option is DEPRECATED.
117 *
118 * Hydra_Software_Devel/86   10/12/09 3:40p tdo
119 * SW7420-252: Fix PxlFreqMask for BFMT_VideoFmt_eDVI_1280x720p
120 *
121 * Hydra_Software_Devel/85   7/21/09 4:23p rpan
122 * PR56037: Initial effort for analog VESA outputs.
123 *
124 * Hydra_Software_Devel/84   5/26/09 6:30p darnstein
125 * PR48884: prevent crash when querying for properties of custom video
126 * format.
127 *
128 * Hydra_Software_Devel/83   5/4/09 4:22p rpan
129 * PR53106: Added new format 720p25/30Hz.
130 *
131 * Hydra_Software_Devel/82   3/31/09 8:22p pntruong
132 * PR51930: Correct the pixel rate for 480p.
133 *
134 * Hydra_Software_Devel/81   3/18/09 6:04p pntruong
135 * PR53234, PR53395: Added support for wvga, wsvga, sxga.
136 *
137 * Hydra_Software_Devel/80   3/4/09 11:19a pntruong
138 * PR52568: Customer not needed the custom 1340x725p@60hz.
139 *
140 * Hydra_Software_Devel/79   3/2/09 3:05p pntruong
141 * PR52568: Added support for custom format 1340x725p@60hz.
142 *
143 * Hydra_Software_Devel/78   2/13/09 2:27p pntruong
144 * PR52089: Updated the data error in the format info for
145 * BFMT_VideoFmt_eDVI_640x480p_66Hz.
146 *
147 * Hydra_Software_Devel/PR52089/1   2/13/09 4:03p gorgon
148 * PR52089: Fix the data error in the format info
149 *
150 * Hydra_Software_Devel/77   10/9/08 10:43a pntruong
151 * PR47156: Downgrade unknown format to just msg.
152 *
153 * Hydra_Software_Devel/76   9/29/08 7:55p pntruong
154 * PR47156: Updated blanking values to match specs.
155 *
156 * Hydra_Software_Devel/75   9/20/08 10:56a pntruong
157 * PR47149: Relax const to allow app to dynamically load of custom ucode.
158 *
159 * Hydra_Software_Devel/74   8/6/08 4:45p pntruong
160 * PR45219:  Added new RGB formats.
161 *
162 * Hydra_Software_Devel/73   7/22/08 11:07a pntruong
163 * PR45024: Make sure the ulHBlank is right in GetInputStatus for VGA
164 * input.
165 *
166 * Hydra_Software_Devel/72   6/23/08 3:44p rpan
167 * PR43939: Enabled 1080p@29.97.
168 *
169 * Hydra_Software_Devel/71   5/1/08 2:38p rpan
170 * PR42109: Initial work for SECAM variants.
171 *
172 * Hydra_Software_Devel/70   3/26/08 10:24a hongtaoz
173 * PR35398: added BFMT_FREQ_FACTOR to unify Vsync rate and pixel frequency
174 * calculation;
175 *
176 * Hydra_Software_Devel/69   3/14/08 10:57a pntruong
177 * PR40572: Fixed the standard raster line size for 576p.
178 *
179 * Hydra_Software_Devel/68   3/11/08 10:45p pntruong
180 * PR40280: Added support for vdec PAL-60.
181 *
182 * Hydra_Software_Devel/PR40133/1   3/11/08 10:31a mlei
183 * PR40280:need PAL-60 support on 3563
184 *
185 * Hydra_Software_Devel/67   12/3/07 11:43a pntruong
186 * PR37790: [PC]: Remove two reduntant formats:
187 * BFMT_VideoFmt_eDVI_1920x1080p_60Hz_Cea; and
188 * BFMT_VideoFmt_eDVI_1920x1080i_60Hz.
189 *
190 * Hydra_Software_Devel/gorgon_temp_20071203/1   12/3/07 2:34p gorgon
191 * PR37790:[PC]: Remove two reduntant
192 * formats:BFMT_VideoFmt_eDVI_1920x1080p_60Hz_Cea and
193 * BFMT_VideoFmt_eDVI_1920x1080i_60Hz
194 *
195 * Hydra_Software_Devel/66   11/2/07 12:11p pntruong
196 * PR34239: fixed segfault in hddvi auto detection.
197 *
198 * Hydra_Software_Devel/65   10/30/07 7:06p pntruong
199 * PR34239: Allow dynamically loading of vec custom timing.
200 *
201 * Hydra_Software_Devel/64   10/15/07 3:20p pntruong
202 * PR35137: Add NTSC443 support for cvbs/Svideo.
203 *
204 * Hydra_Software_Devel/63   9/29/07 3:30p pntruong
205 * PR33621: Fill in FMT entries for ulTopActive.
206 *
207 * Hydra_Software_Devel/PR33621/1   9/29/07 5:06p gorgon
208 * PR33621:Fill in FMT entries for ulTopActive
209 *
210 * Hydra_Software_Devel/62   8/17/07 11:44a pntruong
211 * PR34059: Need to fix FMT name for 1024x768i_43Hz.
212 *
213 * Hydra_Software_Devel/PR34059/1   8/17/07 11:40a gorgon
214 * PR34059: Need to fix FMT name for 1024x768i_43Hz
215 *
216 * Hydra_Software_Devel/61   8/16/07 6:22p tdo
217 * PR34007: [VDEC] Add support for 50Hz formats
218 * (576p/720p/1080i/1080p/50Hz).
219 *
220 * Hydra_Software_Devel/60   7/31/07 2:45p pntruong
221 * PR33182: Video abnormal when enable ANR for some format of
222 * HDMI(640*350@60Hz/640*400@60Hz/70Hz).
223 *
224 * Hydra_Software_Devel/59   7/19/07 4:33p pntruong
225 * PR33138: [VDEC][PC]:Support PC 1920x1080i_60Hz.
226 *
227 * Hydra_Software_Devel/Gorgon_20070719/1   7/19/07 3:38p gorgon
228 * PR33138:[VDEC][PC]:Support PC 1920x1080i_60Hz.
229 *
230 * Hydra_Software_Devel/58   7/11/07 1:56p pntruong
231 * PR32296, PR32913, PR32919: Added support for 1080p@60Hz_Cea,
232 * 1366x768@60Hz.
233 *
234 * Hydra_Software_Devel/PR32296/2   7/11/07 9:34p gorgon
235 * PR32919:[PC]: Support format 1366x768@60.
236 *
237 * Hydra_Software_Devel/PR32296/1   7/11/07 7:26p gorgon
238 * PR32913:[PC]:Add a new format 1920x1080p@60Hz_Cea.
239 *
240 * Hydra_Software_Devel/57   7/3/07 2:09p pntruong
241 * PR32080: Updated format info of vesa formats to relfect standard
242 * values.
243 *
244 * Hydra_Software_Devel/56   6/27/07 6:25p pntruong
245 * PR32553: Update line length for 1024x768i@43Hz.
246 *
247 * Hydra_Software_Devel/Custom_Hw_Issue/1   6/27/07 10:09p dyzhang
248 * PR32553: Update line length for 1024x768i@43Hz
249 *
250 * Hydra_Software_Devel/55   6/18/07 6:20p pntruong
251 * PR31619: Correct pixle rate setting for 1400x1050p_75hz.
252 *
253 * Hydra_Software_Devel/54   6/12/07 4:33p pntruong
254 * PR32076, PR32078, PR32081: Updated pc-input pll settings.
255 *
256 * Hydra_Software_Devel/53   6/5/07 8:42p pntruong
257 * PR31619: Add two new format: 1280x768p/60Hz reduced blank and
258 * 1400x1050p/60Hz reduced blank.
259 * PR31619: Update timing and PLL settings for 1280x768p/60Hz and
260 * 1280x960p/60Hz
261 * PR31619: Update timing and PLL settings for 1400x1050p/60Hz and
262 * 1400x1050p/75Hz.
263 * PR31619: Update ulScanWidth and PLL settings for 1280x1024p/60Hz,
264 * 1280x1024p/75Hz and 1280x1024p/85Hz.
265 * PR31619: Update ulScanWidth for 1024x768p/70Hz and 1024x768p/85Hz to
266 * fix the waviness issue.
267 * PR31619: Update 640x350p/85Hz VStart.
268 *
269 * Hydra_Software_Devel/52   5/23/07 9:13p pntruong
270 * PR31558: Add support for new PC input format 1600x1200p@60Hz.
271 *
272 * Hydra_Software_Devel/51   5/18/07 2:46p yuxiaz
273 * PR28810: Merge in 832x624 support from PR28810 branch.
274 *
275 * Hydra_Software_Devel/PR28810/1   5/16/07 11:16a honglang
276 * PR28810: add format 832x624 support
277 *
278 * Hydra_Software_Devel/50   4/11/07 7:33p pntruong
279 * PR29483: PC input. Add two supported formats:720x400@70Hz and
280 * 640x350@70Hz.  Also not include the dummy adc/edsafe regs in rul.
281 *
282 * Hydra_Software_Devel/49   3/7/07 5:21p pntruong
283 * PR28477: Added parameters for 1152x864p@75Hz, 1280x768p@75/85Hz,
284 * 1280x960p@60/85Hz, 1280x1024p@60/75/85Hz.
285 *
286 * Hydra_Software_Devel/48   2/5/07 4:06p pntruong
287 * PR26677, PR23236: Fixed vertical frequency to be more accurate for
288 * 640x480@72Hz and 800x600@72Hz.
289 *
290 * Hydra_Software_Devel/47   2/1/07 1:54p pntruong
291 * PR26677, PR23236: Enhanced autoformat detection, added 1080p support.
292 *
293 * Hydra_Software_Devel/46   1/23/07 4:05p pntruong
294 * PR23225: VDEC - PC input.  Updated values for FD detect for PC mode.
295 *
296 * Hydra_Software_Devel/45   1/21/07 2:31p pntruong
297 * PR23225: VDEC - PC input.  Fine tune the other parameters for pc
298 * formats.
299 *
300 * Hydra_Software_Devel/44   12/18/06 11:26p pntruong
301 * PR22577: Merged back to mainline.
302 *
303 * Hydra_Software_Devel/Refsw_Devel_3563/4   10/23/06 4:41p hongtaoz
304 * PR22568, PR23188: updated 1600x1200p format info;
305 *
306 * Hydra_Software_Devel/Refsw_Devel_3563/3   10/4/06 6:57p hongtaoz
307 * PR23204, PR23279, PR23280, PR24727: add user-defined custom formats;
308 * removed CUSTOM 1600x1200p format;
309 *
310 * Hydra_Software_Devel/Refsw_Devel_3563/2   9/26/06 11:05a pntruong
311 * PR23550: Add format support for 1360x768@60Hz, 1280x768@60Hz,
312 * 1280x768@60Hz Reduced Blanking.
313 *
314 * Hydra_Software_Devel/Refsw_Devel_3563/1   9/25/06 2:05p pntruong
315 * PR23222, PR23225: Added more entries in format detection table.
316 *
317 * Hydra_Software_Devel/43   9/6/06 4:16p hongtaoz
318 * PR22568, PR23188: added 1080p60 format for 3563;
319 *
320 * Hydra_Software_Devel/42   8/23/06 5:11p pntruong
321 * PR23836: Please fix compiler warnings with: VDC, RDC, and FMT.
322 *
323 * Hydra_Software_Devel/41   8/16/06 3:25p pntruong
324 * PR23522: Add supporting hdmi pc input 800x600@56Hz and 800x600@85Hz
325 *
326 * Hydra_Software_Devel/40   8/7/06 11:58a pntruong
327 * PR22494: Support HDDVI new trigger in 3560 B0 software.
328 *
329 * Hydra_Software_Devel/39   7/21/06 2:51p pntruong
330 * PR20913: Need support for smaller formats to avoid clipping issues.
331 * Need to use double the hblank as well.
332 *
333 * Hydra_Software_Devel/38   7/5/06 6:39p pntruong
334 * PR20913: Need support for smaller formats to avoid clipping issues.
335 * Made 240p and 288p a custom format for 7411 because of non-repeat
336 * pixel support.
337 *
338 * Hydra_Software_Devel/37   6/19/06 4:49p pntruong
339 * PR20913: Fixed the height.
340 *
341 * Hydra_Software_Devel/36   6/19/06 10:14a pntruong
342 * PR20913: Need support for smaller formats to avoid clipping issues.
343 * Added 240p60Hz and 288p50Hz hddvi input support.
344 *
345 * Hydra_Software_Devel/35   6/9/06 8:45a jessem
346 * PR 19995: Added 720p 23.976/24Hz support.
347 *
348 * Hydra_Software_Devel/34   6/5/06 4:15p jessem
349 * PR 19995: Added 1080p 24Hz support.
350 *
351 * Hydra_Software_Devel/33   4/19/06 1:47p hongtaoz
352 * PR20938: redefined pixel frequency bit mask; updated some vesa mode
353 * timing parameters to comply with DVT Format Support document, i.e.
354 * reference software only supports 50/59.94/60 Hz trackable frame rate
355 * for VESA formats;
356 *
357 * Hydra_Software_Devel/32   3/27/06 1:55p pntruong
358 * PR20239: Added support for 1920x1080P@24Hz, 1920x1080P@30Hz formats on
359 * 3560B0 on HD_DVI input.
360 *
361 * Hydra_Software_Devel/31   2/16/06 3:05p pntruong
362 * PR17778: Update pixel clock rate for new formats.
363 *
364 * Hydra_Software_Devel/30   2/15/06 11:32a jessem
365 * PR 17554: Added support for 1080p 30Hz.
366 *
367 * Hydra_Software_Devel/29   1/31/06 1:52p pntruong
368 * PR17778: Support VESA input for HD_DVI, and merge in 3560B0 support.
369 *
370 * Hydra_Software_Devel/28   9/30/05 4:36p hongtaoz
371 * PR12560: fixed a typo for BFMT_VideoFmt_eDVI_1280x720p_50Hz;
372 *
373 * Hydra_Software_Devel/27   9/22/05 2:40p hongtaoz
374 * PR12388, PR15820, PR15563, PR15685: fixed eCutome_1366x768p format
375 * raster sizes; fixed 480p/576p etc formats' pixel frequency values;
376 *
377 * Hydra_Software_Devel/26   9/21/05 7:56p albertl
378 * PR12388:  Added 1366x768 50Hz and removed 50Hz clock from old 1366x768.
379 *
380 * Hydra_Software_Devel/25   6/22/05 2:45p pntruong
381 * PR15820, PR15563, PR15685: Added pixel frequency to aid compute
382 * bandwith equation.
383 *
384 * Hydra_Software_Devel/24   6/13/05 4:38p albertl
385 * PR12560:  Changed DVI 1280x768 to 15:9 aspect ratio.
386 *
387 * Hydra_Software_Devel/23   2/14/05 1:56p rgreen
388 * PR 13448: Modify DigitalHeight of PAL_M from 483 to 480
389 *
390 * Hydra_Software_Devel/22   2/9/05 2:52p albertl
391 * PR12560: Added BFMT_VideoFmt_eDVI_1280x768p,
392 * BFMT_VideoFmt_eDVI_1280x720p_50Hz, BFMT_VideoFmt_eDVI_1280x720p, and
393 * BFMT_VideoFmt_eDVI_1280x720p_Red formats.
394 *
395 * Hydra_Software_Devel/21   12/20/04 2:11p darnstein
396 * PR 13506: Adapt to change BAVC_AspectRatio->BFMT_AspectRatio.
397 *
398 * Hydra_Software_Devel/20   12/16/04 5:29p albertl
399 * PR12388:  Added 50Hz clock to 1366x768.
400 *
401 * Hydra_Software_Devel/19   12/9/04 12:45p pntruong
402 * PR 13448:  Fixed typo on previous checked in.
403 *
404 * Hydra_Software_Devel/18   12/3/04 10:06a jasonh
405 * PR 13448: Added support of digital format width/height to FMT module.
406 *
407 * Hydra_Software_Devel/17   11/5/04 4:23p hongtaoz
408 * PR13180: fixed PAL M format info errors;
409 *
410 * Hydra_Software_Devel/16   10/22/04 11:41a hongtaoz
411 * PR12162: set the bottom max vbi lines the same as top for progressive
412 * mode;
413 *
414 * Hydra_Software_Devel/15   10/13/04 7:55p hongtaoz
415 * PR12301: added the maximum VBI pass-through lines for each format;
416 * removed top/bottom/left/right porches, instead directly use scan width
417 * and height to describe the format rasterization information;
418 *
419 * Hydra_Software_Devel/14   9/22/04 12:32p pntruong
420 * PR12728: Fixed -pdantic build warnings and errors.
421 *
422 * Hydra_Software_Devel/13   9/15/04 4:33p albertl
423 * PR 12388:  Added 1366x768 format, and integrated required settings.
424 *
425 * Hydra_Software_Devel/12   9/9/04 11:31a hongtaoz
426 * PR11868, PR11870: added VESA modes 800x600p and 1024x768p;
427 *
428 * Hydra_Software_Devel/11   9/2/04 11:18a hongtaoz
429 * PR10827: adding dvi safe mode(640x480p) support;
430 *
431 * Hydra_Software_Devel/10   7/8/04 5:57p hongtaoz
432 * PR11794: added 720p_50Hz and 1250i_50Hz support;
433 *
434 * Hydra_Software_Devel/9   6/16/04 5:42p jasonh
435 * PR 11562: Added support for test format.
436 *
437 * Hydra_Software_Devel/8   5/4/04 6:44p hongtaoz
438 * PR10073: added refresh rate to the BFMT module;
439 * PR10942: added pixel frequency bit mask into format info; only expose
440 * necessary format macroes;
441 *
442 * Hydra_Software_Devel/6   2/19/04 10:38a maivu
443 * PR 9493: Removed generic PAL. Replaced with specific PAL modes:
444 * B,B1,D,D1,G,H,I,K
445 *
446 * Hydra_Software_Devel/5   12/17/03 3:47p pntruong
447 * PR 9027: Added BFMT_GetVideoFormatInfoPtr to BFMT.
448 *
449 * Hydra_Software_Devel/4   12/1/03 11:29a pntruong
450 * Removed unnecessary usage of BKNI_Memcpy.
451 *
452 * Hydra_Software_Devel/3   10/9/03 8:40a pntruong
453 * Added some common use constants.
454 *
455 * Hydra_Software_Devel/2   8/14/03 5:50p pntruong
456 * Fixed PAL_M entry.
457 *
458 * Hydra_Software_Devel/1   7/22/03 1:43p pntruong
459 * Initial verstion.
460 *
461 ***************************************************************************/
462
463/* user-defined formats and microcodes for both eCustom0, and eCustom1 */
464#include "bstd.h"
465#include "bdbg.h"
466#include "bfmt.h"
467#include "bfmt_custom.c"
468
469BDBG_MODULE(BFMT);
470
471/* Fill entries in with blank. */
472#define BFMT_P_MAKE_BLANK(fmt) \
473{                              \
474        fmt,                       \
475        BFMT_NTSC_WIDTH,           \
476        BFMT_NTSC_HEIGHT,          \
477        BFMT_NTSC_WIDTH,           \
478        480,                       \
479        858,                       \
480        525,                       \
481        22,                        \
482        12,                        \
483        12,                        \
484        0,                         \
485        BFMT_VERT_60Hz,            \
486        6000,                      \
487        BFMT_PXL_27MHz,            \
488        true,                      \
489        BFMT_AspectRatio_e4_3,     \
490        BFMT_Orientation_e2D,      \
491        1350,                      \
492        #fmt,                      \
493        NULL                       \
494}
495
496/* Video Format Information!  There are a couple of tables needed to be
497 * updated beside this one.  Check VDC module!
498 * (1) BVDC_P_aFormatInfoTable in bvdc_displayfmt_priv.c
499 * (2) s_aFormatDataTable in bvdc_displayfmt_priv.c
500 * (3) s_astShaperSettings in bvdc_displayfmt_priv.c
501 *
502 * TODO: Additional update Pixel Frequency needed! */
503static const BFMT_VideoInfo s_aVideoFmtInfoTbls[] =
504{
505        {
506                BFMT_VideoFmt_eNTSC,
507                BFMT_NTSC_WIDTH,
508                BFMT_NTSC_HEIGHT,
509                BFMT_NTSC_WIDTH,
510                480,
511                858,
512                525,
513                22,
514                12,
515                12,
516                0,
517                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
518                60 * BFMT_FREQ_FACTOR,
519                BFMT_PXL_27MHz | BFMT_PXL_27MHz_MUL_1_001,
520                true,
521                BFMT_AspectRatio_e4_3,
522                BFMT_Orientation_e2D,
523                13.50 * BFMT_FREQ_FACTOR,
524                "BFMT_VideoFmt_eNTSC",
525                NULL
526        },
527
528        {
529                BFMT_VideoFmt_eNTSC_J,
530                BFMT_NTSC_WIDTH,
531                BFMT_NTSC_HEIGHT,
532                BFMT_NTSC_WIDTH,
533                480,
534                858,
535                525,
536                22,
537                12,
538                12,
539                0,
540                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
541                60 * BFMT_FREQ_FACTOR,
542                BFMT_PXL_27MHz | BFMT_PXL_27MHz_MUL_1_001,
543                true,
544                BFMT_AspectRatio_e4_3,
545                BFMT_Orientation_e2D,
546                13.50 * BFMT_FREQ_FACTOR,
547                "BFMT_VideoFmt_eNTSC_J",
548                NULL
549        },
550
551        {
552                BFMT_VideoFmt_eNTSC_443,
553                BFMT_NTSC_WIDTH,
554                BFMT_NTSC_HEIGHT,
555                BFMT_NTSC_WIDTH,
556                480,
557                858,
558                525,
559                22,
560                12,
561                12,
562                0,
563                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
564                60 * BFMT_FREQ_FACTOR,
565                BFMT_PXL_27MHz | BFMT_PXL_27MHz_MUL_1_001,
566                true,
567                BFMT_AspectRatio_e4_3,
568                BFMT_Orientation_e2D,
569                13.50 * BFMT_FREQ_FACTOR,
570                "BFMT_VideoFmt_eNTSC_443",
571                NULL
572        },
573
574        {
575                BFMT_VideoFmt_ePAL_B,
576                BFMT_PAL_WIDTH,
577                BFMT_PAL_HEIGHT,
578                BFMT_PAL_WIDTH,
579                BFMT_PAL_HEIGHT,
580                864,
581                625,
582                23,
583                17,
584                18,
585                0,
586                BFMT_VERT_50Hz,
587                50 * BFMT_FREQ_FACTOR,
588                BFMT_PXL_27MHz,
589                true,
590                BFMT_AspectRatio_e4_3,
591                BFMT_Orientation_e2D,
592                13.50 * BFMT_FREQ_FACTOR,
593                "BFMT_VideoFmt_ePAL_B",
594                NULL
595        },
596
597        {
598                BFMT_VideoFmt_ePAL_B1,
599                BFMT_PAL_WIDTH,
600                BFMT_PAL_HEIGHT,
601                BFMT_PAL_WIDTH,
602                BFMT_PAL_HEIGHT,
603                864,
604                625,
605                23,
606                17,
607                18,
608                0,
609                BFMT_VERT_50Hz,
610                50 * BFMT_FREQ_FACTOR,
611                BFMT_PXL_27MHz,
612                true,
613                BFMT_AspectRatio_e4_3,
614                BFMT_Orientation_e2D,
615                13.50 * BFMT_FREQ_FACTOR,
616                "BFMT_VideoFmt_ePAL_B1",
617                NULL
618        },
619
620        {
621                BFMT_VideoFmt_ePAL_D,
622                BFMT_PAL_WIDTH,
623                BFMT_PAL_HEIGHT,
624                BFMT_PAL_WIDTH,
625                BFMT_PAL_HEIGHT,
626                864,
627                625,
628                23,
629                17,
630                18,
631                0,
632                BFMT_VERT_50Hz,
633                50 * BFMT_FREQ_FACTOR,
634                BFMT_PXL_27MHz,
635                true,
636                BFMT_AspectRatio_e4_3,
637                BFMT_Orientation_e2D,
638                13.50 * BFMT_FREQ_FACTOR,
639                "BFMT_VideoFmt_ePAL_D",
640                NULL
641        },
642
643        {
644                BFMT_VideoFmt_ePAL_D1,
645                BFMT_PAL_WIDTH,
646                BFMT_PAL_HEIGHT,
647                BFMT_PAL_WIDTH,
648                BFMT_PAL_HEIGHT,
649                864,
650                625,
651                23,
652                17,
653                18,
654                0,
655                BFMT_VERT_50Hz,
656                50 * BFMT_FREQ_FACTOR,
657                BFMT_PXL_27MHz,
658                true,
659                BFMT_AspectRatio_e4_3,
660                BFMT_Orientation_e2D,
661                13.50 * BFMT_FREQ_FACTOR,
662                "BFMT_VideoFmt_ePAL_D1",
663                NULL
664        },
665
666        {
667                BFMT_VideoFmt_ePAL_G,
668                BFMT_PAL_WIDTH,
669                BFMT_PAL_HEIGHT,
670                BFMT_PAL_WIDTH,
671                BFMT_PAL_HEIGHT,
672                864,
673                625,
674                23,
675                17,
676                18,
677                0,
678                BFMT_VERT_50Hz,
679                50 * BFMT_FREQ_FACTOR,
680                BFMT_PXL_27MHz,
681                true,
682                BFMT_AspectRatio_e4_3,
683                BFMT_Orientation_e2D,
684                13.50 * BFMT_FREQ_FACTOR,
685                "BFMT_VideoFmt_ePAL_G",
686                NULL
687        },
688
689        {
690                BFMT_VideoFmt_ePAL_H,
691                BFMT_PAL_WIDTH,
692                BFMT_PAL_HEIGHT,
693                BFMT_PAL_WIDTH,
694                BFMT_PAL_HEIGHT,
695                864,
696                625,
697                23,
698                17,
699                18,
700                0,
701                BFMT_VERT_50Hz,
702                50 * BFMT_FREQ_FACTOR,
703                BFMT_PXL_27MHz,
704                true,
705                BFMT_AspectRatio_e4_3,
706                BFMT_Orientation_e2D,
707                13.50 * BFMT_FREQ_FACTOR,
708                "BFMT_VideoFmt_ePAL_H",
709                NULL
710        },
711
712        {
713                BFMT_VideoFmt_ePAL_K,
714                BFMT_PAL_WIDTH,
715                BFMT_PAL_HEIGHT,
716                BFMT_PAL_WIDTH,
717                BFMT_PAL_HEIGHT,
718                864,
719                625,
720                23,
721                17,
722                18,
723                0,
724                BFMT_VERT_50Hz,
725                50 * BFMT_FREQ_FACTOR,
726                BFMT_PXL_27MHz,
727                true,
728                BFMT_AspectRatio_e4_3,
729                BFMT_Orientation_e2D,
730                13.50 * BFMT_FREQ_FACTOR,
731                "BFMT_VideoFmt_ePAL_K",
732                NULL
733        },
734
735        {
736                BFMT_VideoFmt_ePAL_I,
737                BFMT_PAL_WIDTH,
738                BFMT_PAL_HEIGHT,
739                BFMT_PAL_WIDTH,
740                BFMT_PAL_HEIGHT,
741                864,
742                625,
743                23,
744                17,
745                18,
746                0,
747                BFMT_VERT_50Hz,
748                50 * BFMT_FREQ_FACTOR,
749                BFMT_PXL_27MHz,
750                true,
751                BFMT_AspectRatio_e4_3,
752                BFMT_Orientation_e2D,
753                13.50 * BFMT_FREQ_FACTOR,
754                "BFMT_VideoFmt_ePAL_I",
755                NULL
756        },
757
758        {
759                BFMT_VideoFmt_ePAL_M,
760                BFMT_PAL_M_WIDTH,
761                BFMT_PAL_M_HEIGHT,
762                BFMT_PAL_M_WIDTH,
763                480,
764                858,
765                525,
766                22,
767                12,
768                12,
769                0,
770                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
771                60 * BFMT_FREQ_FACTOR,
772                BFMT_PXL_27MHz | BFMT_PXL_27MHz_MUL_1_001,
773                true,
774                BFMT_AspectRatio_e4_3,
775                BFMT_Orientation_e2D,
776                13.50 * BFMT_FREQ_FACTOR,
777                "BFMT_VideoFmt_ePAL_M",
778                NULL
779        },
780
781        {
782                BFMT_VideoFmt_ePAL_N,
783                BFMT_PAL_N_WIDTH,
784                BFMT_PAL_N_HEIGHT,
785                BFMT_PAL_N_WIDTH,
786                BFMT_PAL_N_HEIGHT,
787                864,
788                625,
789                23,
790                17,
791                18,
792                0,
793                BFMT_VERT_50Hz,
794                50 * BFMT_FREQ_FACTOR,
795                BFMT_PXL_27MHz,
796                true,
797                BFMT_AspectRatio_e4_3,
798                BFMT_Orientation_e2D,
799                13.50 * BFMT_FREQ_FACTOR,
800                "BFMT_VideoFmt_ePAL_N",
801                NULL
802        },
803
804        {
805                BFMT_VideoFmt_ePAL_NC,
806                BFMT_PAL_NC_WIDTH,
807                BFMT_PAL_NC_HEIGHT,
808                BFMT_PAL_NC_WIDTH,
809                BFMT_PAL_NC_HEIGHT,
810                864,
811                625,
812                23,
813                17,
814                18,
815                0,
816                BFMT_VERT_50Hz,
817                50 * BFMT_FREQ_FACTOR,
818                BFMT_PXL_27MHz,
819                true,
820                BFMT_AspectRatio_e4_3,
821                BFMT_Orientation_e2D,
822                13.50 * BFMT_FREQ_FACTOR,
823                "BFMT_VideoFmt_ePAL_NC",
824                NULL
825        },
826
827        {
828                BFMT_VideoFmt_ePAL_60,
829                BFMT_NTSC_WIDTH,
830                BFMT_NTSC_HEIGHT,
831                BFMT_NTSC_WIDTH,
832                480,
833                858,
834                525,
835                22,
836                12,
837                12,
838                0,
839                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
840                60 * BFMT_FREQ_FACTOR,
841                BFMT_PXL_27MHz | BFMT_PXL_27MHz_MUL_1_001,
842                true,
843                BFMT_AspectRatio_e4_3,
844                BFMT_Orientation_e2D,
845                13.50 * BFMT_FREQ_FACTOR,
846                "BFMT_VideoFmt_ePAL_60",
847                NULL
848        },
849
850        {
851                BFMT_VideoFmt_eSECAM_L,
852                BFMT_SECAM_WIDTH,
853                BFMT_SECAM_HEIGHT,
854                BFMT_SECAM_WIDTH,
855                BFMT_SECAM_HEIGHT,
856                864,
857                625,
858                23,
859                17,
860                18,
861                0,
862                BFMT_VERT_50Hz,
863                50 * BFMT_FREQ_FACTOR,
864                BFMT_PXL_27MHz,
865                true,
866                BFMT_AspectRatio_e4_3,
867                BFMT_Orientation_e2D,
868                13.50 * BFMT_FREQ_FACTOR,
869                "BFMT_VideoFmt_eSECAM_L",
870                NULL
871        },
872
873        {
874                BFMT_VideoFmt_eSECAM_B,
875                BFMT_SECAM_WIDTH,
876                BFMT_SECAM_HEIGHT,
877                BFMT_SECAM_WIDTH,
878                BFMT_SECAM_HEIGHT,
879                864,
880                625,
881                23,
882                17,
883                18,
884                0,
885                BFMT_VERT_50Hz,
886                50 * BFMT_FREQ_FACTOR,
887                BFMT_PXL_27MHz,
888                true,
889                BFMT_AspectRatio_e4_3,
890                BFMT_Orientation_e2D,
891                13.50 * BFMT_FREQ_FACTOR,
892                "BFMT_VideoFmt_eSECAM_B",
893                NULL
894        },
895
896        {
897                BFMT_VideoFmt_eSECAM_G,
898                BFMT_SECAM_WIDTH,
899                BFMT_SECAM_HEIGHT,
900                BFMT_SECAM_WIDTH,
901                BFMT_SECAM_HEIGHT,
902                864,
903                625,
904                23,
905                17,
906                18,
907                0,
908                BFMT_VERT_50Hz,
909                50 * BFMT_FREQ_FACTOR,
910                BFMT_PXL_27MHz,
911                true,
912                BFMT_AspectRatio_e4_3,
913                BFMT_Orientation_e2D,
914                13.50 * BFMT_FREQ_FACTOR,
915                "BFMT_VideoFmt_eSECAM_G",
916                NULL
917        },
918
919        {
920                BFMT_VideoFmt_eSECAM_D,
921                BFMT_SECAM_WIDTH,
922                BFMT_SECAM_HEIGHT,
923                BFMT_SECAM_WIDTH,
924                BFMT_SECAM_HEIGHT,
925                864,
926                625,
927                23,
928                17,
929                18,
930                0,
931                BFMT_VERT_50Hz,
932                50 * BFMT_FREQ_FACTOR,
933                BFMT_PXL_27MHz,
934                true,
935                BFMT_AspectRatio_e4_3,
936                BFMT_Orientation_e2D,
937                13.50 * BFMT_FREQ_FACTOR,
938                "BFMT_VideoFmt_eSECAM_D",
939                NULL
940        },
941
942        {
943                BFMT_VideoFmt_eSECAM_K,
944                BFMT_SECAM_WIDTH,
945                BFMT_SECAM_HEIGHT,
946                BFMT_SECAM_WIDTH,
947                BFMT_SECAM_HEIGHT,
948                864,
949                625,
950                23,
951                17,
952                18,
953                0,
954                BFMT_VERT_50Hz,
955                50 * BFMT_FREQ_FACTOR,
956                BFMT_PXL_27MHz,
957                true,
958                BFMT_AspectRatio_e4_3,
959                BFMT_Orientation_e2D,
960                13.50 * BFMT_FREQ_FACTOR,
961                "BFMT_VideoFmt_eSECAM_K",
962                NULL
963        },
964
965        {
966                BFMT_VideoFmt_eSECAM_H,
967                BFMT_SECAM_WIDTH,
968                BFMT_SECAM_HEIGHT,
969                BFMT_SECAM_WIDTH,
970                BFMT_SECAM_HEIGHT,
971                864,
972                625,
973                23,
974                17,
975                18,
976                0,
977                BFMT_VERT_50Hz,
978                50 * BFMT_FREQ_FACTOR,
979                BFMT_PXL_27MHz,
980                true,
981                BFMT_AspectRatio_e4_3,
982                BFMT_Orientation_e2D,
983                13.50 * BFMT_FREQ_FACTOR,
984                "BFMT_VideoFmt_eSECAM_H",
985                NULL
986        },
987
988        {
989                BFMT_VideoFmt_e1080i,
990                BFMT_1080I_WIDTH,
991                BFMT_1080I_HEIGHT,
992                BFMT_1080I_WIDTH,
993                BFMT_1080I_HEIGHT,
994                2200,
995                1125,
996                21,
997                14,
998                15,
999                0,
1000                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1001                60 * BFMT_FREQ_FACTOR,
1002                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1003                true,
1004                BFMT_AspectRatio_e16_9,
1005                BFMT_Orientation_e2D,
1006                74.25 * BFMT_FREQ_FACTOR,
1007                "BFMT_VideoFmt_e1080i",
1008                NULL
1009        },
1010
1011        {
1012                BFMT_VideoFmt_e1080p,
1013                BFMT_1080I_WIDTH,
1014                BFMT_1080I_HEIGHT,
1015                BFMT_1080I_WIDTH,
1016                BFMT_1080I_HEIGHT,
1017                2200,
1018                1125,
1019                42,
1020                36,
1021                36,
1022                0,
1023                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1024                60 * BFMT_FREQ_FACTOR,
1025                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1026                false,
1027                BFMT_AspectRatio_e16_9,
1028                BFMT_Orientation_e2D,
1029                148.50 * BFMT_FREQ_FACTOR,
1030                "BFMT_VideoFmt_e1080p",
1031                NULL
1032        },
1033
1034        {
1035                BFMT_VideoFmt_e720p,
1036                BFMT_720P_WIDTH,
1037                BFMT_720P_HEIGHT,
1038                BFMT_720P_WIDTH,
1039                BFMT_720P_HEIGHT,
1040                1650,
1041                750,
1042                26,
1043                20,
1044                20,
1045                0,
1046                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1047                60 * BFMT_FREQ_FACTOR,
1048                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1049                false,
1050                BFMT_AspectRatio_e16_9,
1051                BFMT_Orientation_e2D,
1052                74.25 * BFMT_FREQ_FACTOR,
1053                "BFMT_VideoFmt_e720p",
1054                NULL
1055        },
1056
1057        {
1058                BFMT_VideoFmt_e720p_60Hz_3DOU_AS,
1059                BFMT_720P_WIDTH,
1060                BFMT_720P_HEIGHT,
1061                BFMT_720P_WIDTH,
1062                BFMT_720P_HEIGHT,
1063                1650,
1064                750 * 2,
1065                26,
1066                20,
1067                20,
1068                30,
1069                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1070                60 * BFMT_FREQ_FACTOR,
1071                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1072                false,
1073                BFMT_AspectRatio_e16_9,
1074                BFMT_Orientation_e3D_OverUnder,
1075                148.5 * BFMT_FREQ_FACTOR,
1076                "BFMT_VideoFmt_e720p_60Hz_3DOU_AS",
1077                NULL
1078        },
1079
1080        {
1081                BFMT_VideoFmt_e720p_50Hz_3DOU_AS,
1082                BFMT_720P_WIDTH,
1083                BFMT_720P_HEIGHT,
1084                BFMT_720P_WIDTH,
1085                BFMT_720P_HEIGHT,
1086                1980,
1087                750 * 2,
1088                26,
1089                20,
1090                20,
1091                30,
1092                BFMT_VERT_50Hz,
1093                50 * BFMT_FREQ_FACTOR,
1094                BFMT_PXL_148_5MHz,
1095                false,
1096                BFMT_AspectRatio_e16_9,
1097                BFMT_Orientation_e3D_OverUnder,
1098                148.5 * BFMT_FREQ_FACTOR,
1099                "BFMT_VideoFmt_e720p_50Hz_3DOU_AS",
1100                NULL
1101        },
1102
1103        {
1104                BFMT_VideoFmt_e720p_30Hz_3DOU_AS,
1105                BFMT_720P_WIDTH,
1106                BFMT_720P_HEIGHT,
1107                BFMT_720P_WIDTH,
1108                BFMT_720P_HEIGHT,
1109                3300,
1110                750 * 2,
1111                30,
1112                20,
1113                20,
1114                30,
1115                BFMT_VERT_30Hz,
1116                30 * BFMT_FREQ_FACTOR,
1117                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1118                false,
1119                BFMT_AspectRatio_e16_9,
1120                BFMT_Orientation_e3D_OverUnder,
1121                148.5 * BFMT_FREQ_FACTOR,
1122                "BFMT_VideoFmt_e720p_30Hz_3DOU_AS",
1123                NULL
1124        },
1125
1126        {
1127                BFMT_VideoFmt_e720p_24Hz_3DOU_AS,
1128                BFMT_720P_WIDTH,
1129                BFMT_720P_HEIGHT,
1130                BFMT_720P_WIDTH,
1131                BFMT_720P_HEIGHT,
1132                4125,
1133                750 * 2,
1134                30,
1135                20,
1136                20,
1137                30,
1138                BFMT_VERT_24Hz | BFMT_VERT_23_976Hz,
1139                24 * BFMT_FREQ_FACTOR,
1140                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1141                false,
1142                BFMT_AspectRatio_e16_9,
1143                BFMT_Orientation_e3D_OverUnder,
1144                148.5 * BFMT_FREQ_FACTOR,
1145                "BFMT_VideoFmt_e720p_24Hz_3DOU_AS",
1146                NULL
1147        },
1148
1149        {
1150                BFMT_VideoFmt_e480p,
1151                BFMT_480P_WIDTH,
1152                BFMT_480P_HEIGHT,
1153                BFMT_480P_WIDTH,
1154                480,
1155                858,
1156                525,
1157                43,
1158                30,
1159                30,
1160                0,
1161                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1162                60.00 * BFMT_FREQ_FACTOR,
1163                BFMT_PXL_27MHz_MUL_1_001 | BFMT_PXL_27MHz,
1164                false,
1165                BFMT_AspectRatio_e4_3,
1166                BFMT_Orientation_e2D,
1167                27 * BFMT_FREQ_FACTOR,
1168                "BFMT_VideoFmt_e480p",
1169                NULL
1170        },
1171
1172        {
1173                BFMT_VideoFmt_e1080i_50Hz,
1174                BFMT_1080I_WIDTH,
1175                BFMT_1080I_HEIGHT,
1176                BFMT_1080I_WIDTH,
1177                BFMT_1080I_HEIGHT,
1178                2640,
1179                1125,
1180                21,
1181                14,
1182                15,
1183                0,
1184                BFMT_VERT_50Hz,
1185                50 * BFMT_FREQ_FACTOR,
1186                BFMT_PXL_74_25MHz,
1187                true,
1188                BFMT_AspectRatio_e16_9,
1189                BFMT_Orientation_e2D,
1190                74.25 * BFMT_FREQ_FACTOR,
1191                "BFMT_VideoFmt_e1080i_50Hz",
1192                NULL
1193        },
1194
1195        {
1196                BFMT_VideoFmt_e1080p_24Hz_3DOU_AS,
1197                BFMT_1080P_WIDTH,
1198                BFMT_1080P_HEIGHT,
1199                BFMT_1080P_WIDTH,
1200                BFMT_1080P_HEIGHT,
1201                2750,
1202                1125 * 2,
1203                42,
1204                41,
1205                4,
1206                45,
1207                BFMT_VERT_24Hz | BFMT_VERT_23_976Hz,
1208                24 * BFMT_FREQ_FACTOR,
1209                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1210                false,
1211                BFMT_AspectRatio_e16_9,
1212                BFMT_Orientation_e3D_OverUnder,
1213                148.5 * BFMT_FREQ_FACTOR,
1214                "BFMT_VideoFmt_e1080p_24Hz_3DOU_AS",
1215                NULL
1216        },
1217
1218        {
1219                BFMT_VideoFmt_e1080p_30Hz_3DOU_AS,
1220                BFMT_1080P_WIDTH,
1221                BFMT_1080P_HEIGHT,
1222                BFMT_1080P_WIDTH,
1223                BFMT_1080P_HEIGHT,
1224                2200,
1225                1125 * 2,
1226                42,
1227                41,
1228                4,
1229                45,
1230                BFMT_VERT_30Hz,
1231                30 * BFMT_FREQ_FACTOR,
1232                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1233                false,
1234                BFMT_AspectRatio_e16_9,
1235                BFMT_Orientation_e3D_OverUnder,
1236                148.5 * BFMT_FREQ_FACTOR,
1237                "BFMT_VideoFmt_e1080p_30Hz_3DOU_AS",
1238                NULL
1239        },
1240
1241        {
1242                BFMT_VideoFmt_e1080p_60Hz_3DOU_AS,
1243                BFMT_1080P_WIDTH,
1244                BFMT_1080P_HEIGHT,
1245                BFMT_1080P_WIDTH,
1246                BFMT_1080P_HEIGHT,
1247                2200,
1248                1125 * 2,
1249                42,
1250                41,
1251                4,
1252                45,
1253                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1254                60 * BFMT_FREQ_FACTOR,
1255                BFMT_PXL_297MHz_DIV_1_001 | BFMT_PXL_297MHz,
1256                false,
1257                BFMT_AspectRatio_e16_9,
1258                BFMT_Orientation_e3D_OverUnder,
1259                297 * BFMT_FREQ_FACTOR,
1260                "BFMT_VideoFmt_e1080p_60Hz_3DOU_AS",
1261                NULL
1262        },
1263
1264        {
1265                BFMT_VideoFmt_e1080p_60Hz_3DLR,
1266                BFMT_1080P_WIDTH,
1267                BFMT_1080P_HEIGHT,
1268                BFMT_1080P_WIDTH,
1269                BFMT_1080P_HEIGHT,
1270                2200 * 2,
1271                1125,
1272                42,
1273                41,
1274                4,
1275                0,
1276                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1277                60 * BFMT_FREQ_FACTOR,
1278                BFMT_PXL_297MHz_DIV_1_001 | BFMT_PXL_297MHz,
1279                false,
1280                BFMT_AspectRatio_e16_9,
1281                BFMT_Orientation_e3D_LeftRight,
1282                297 * BFMT_FREQ_FACTOR,
1283                "BFMT_VideoFmt_e1080p_60Hz_3DLR",
1284                NULL
1285        },
1286
1287        {
1288                BFMT_VideoFmt_e1080p_24Hz,
1289                BFMT_1080P_WIDTH,
1290                BFMT_1080P_HEIGHT,
1291                BFMT_1080P_WIDTH,
1292                BFMT_1080P_HEIGHT,
1293                2750,
1294                1125,
1295                42,
1296                41,
1297                4,
1298                0,
1299                BFMT_VERT_24Hz | BFMT_VERT_23_976Hz,
1300                24 * BFMT_FREQ_FACTOR,
1301                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1302                false,
1303                BFMT_AspectRatio_e16_9,
1304                BFMT_Orientation_e2D,
1305                74.25 * BFMT_FREQ_FACTOR,
1306                "BFMT_VideoFmt_e1080p_24Hz",
1307                NULL
1308        },
1309
1310        {
1311                BFMT_VideoFmt_e1080p_25Hz,
1312                BFMT_1080P_WIDTH,
1313                BFMT_1080P_HEIGHT,
1314                BFMT_1080P_WIDTH,
1315                BFMT_1080P_HEIGHT,
1316                2640,
1317                1125,
1318                42,
1319                41,
1320                4,
1321                0,
1322                BFMT_VERT_25Hz,
1323                25 * BFMT_FREQ_FACTOR,
1324                BFMT_PXL_74_25MHz,
1325                false,
1326                BFMT_AspectRatio_e16_9,
1327                BFMT_Orientation_e2D,
1328                74.25 * BFMT_FREQ_FACTOR,
1329                "BFMT_VideoFmt_e1080p_25Hz",
1330                NULL
1331        },
1332
1333        {
1334                BFMT_VideoFmt_e1080p_30Hz,
1335                BFMT_1080P_WIDTH,
1336                BFMT_1080P_HEIGHT,
1337                BFMT_1080P_WIDTH,
1338                BFMT_1080P_HEIGHT,
1339                2200,
1340                1125,
1341                42,
1342                41,
1343                4,
1344                0,
1345                BFMT_VERT_30Hz,
1346                30 * BFMT_FREQ_FACTOR,
1347                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1348                false,
1349                BFMT_AspectRatio_e16_9,
1350                BFMT_Orientation_e2D,
1351                74.25 * BFMT_FREQ_FACTOR,
1352                "BFMT_VideoFmt_e1080p_30Hz",
1353                NULL
1354        },
1355
1356        {
1357                BFMT_VideoFmt_e1080p_50Hz,
1358                BFMT_1080P_WIDTH,
1359                BFMT_1080P_HEIGHT,
1360                BFMT_1080P_WIDTH,
1361                BFMT_1080P_HEIGHT,
1362                2640,
1363                1125,
1364                42,
1365                41,
1366                4,
1367                0,
1368                BFMT_VERT_50Hz,
1369                50 * BFMT_FREQ_FACTOR,
1370                BFMT_PXL_148_5MHz,
1371                false,
1372                BFMT_AspectRatio_e16_9,
1373                BFMT_Orientation_e2D,
1374                148.50 * BFMT_FREQ_FACTOR,
1375                "BFMT_VideoFmt_e1080p_50Hz",
1376                NULL
1377        },
1378
1379        {
1380                BFMT_VideoFmt_e1250i_50Hz,
1381                BFMT_1080I_WIDTH,
1382                BFMT_1080I_HEIGHT,
1383                BFMT_1080I_WIDTH,
1384                BFMT_1080I_HEIGHT,
1385                2376,
1386                1250,
1387                81,
1388                79,
1389                79,
1390                0,
1391                BFMT_VERT_50Hz,
1392                50 * BFMT_FREQ_FACTOR,
1393                BFMT_PXL_74_25MHz,
1394                true,
1395                BFMT_AspectRatio_e16_9,
1396                BFMT_Orientation_e2D,
1397                74.25 * BFMT_FREQ_FACTOR,
1398                "BFMT_VideoFmt_e1250i_50Hz",
1399                NULL
1400        },
1401
1402        {
1403                BFMT_VideoFmt_e720p_24Hz,
1404                BFMT_720P_WIDTH,
1405                BFMT_720P_HEIGHT,
1406                BFMT_720P_WIDTH,
1407                BFMT_720P_HEIGHT,
1408                4125,
1409                750,
1410                26,
1411                20,
1412                20,
1413                0,
1414                BFMT_VERT_24Hz | BFMT_VERT_23_976Hz,
1415                24 * BFMT_FREQ_FACTOR,
1416                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1417                false,
1418                BFMT_AspectRatio_e16_9,
1419                BFMT_Orientation_e2D,
1420                74.25 * BFMT_FREQ_FACTOR,
1421                "BFMT_VideoFmt_e720p_24Hz",
1422                NULL
1423        },
1424
1425        {
1426                BFMT_VideoFmt_e720p_25Hz,
1427                BFMT_720P_WIDTH,
1428                BFMT_720P_HEIGHT,
1429                BFMT_720P_WIDTH,
1430                BFMT_720P_HEIGHT,
1431                3960,
1432                750,
1433                26,
1434                20,
1435                20,
1436                0,
1437                BFMT_VERT_25Hz,
1438                25 * BFMT_FREQ_FACTOR,
1439                BFMT_PXL_74_25MHz,
1440                false,
1441                BFMT_AspectRatio_e16_9,
1442                BFMT_Orientation_e2D,
1443                74.25 * BFMT_FREQ_FACTOR,
1444                "BFMT_VideoFmt_e720p_25Hz",
1445                NULL
1446        },
1447
1448        {
1449                BFMT_VideoFmt_e720p_30Hz,
1450                BFMT_720P_WIDTH,
1451                BFMT_720P_HEIGHT,
1452                BFMT_720P_WIDTH,
1453                BFMT_720P_HEIGHT,
1454                3300,
1455                750,
1456                26,
1457                20,
1458                20,
1459                0,
1460                BFMT_VERT_29_97Hz | BFMT_VERT_30Hz,
1461                30 * BFMT_FREQ_FACTOR,
1462                BFMT_PXL_74_25MHz_DIV_1_001 | BFMT_PXL_74_25MHz,
1463                false,
1464                BFMT_AspectRatio_e16_9,
1465                BFMT_Orientation_e2D,
1466                74.25 * BFMT_FREQ_FACTOR,
1467                "BFMT_VideoFmt_e720p_30Hz",
1468                NULL
1469        },
1470
1471        {
1472                BFMT_VideoFmt_e720p_50Hz,
1473                BFMT_720P_WIDTH,
1474                BFMT_720P_HEIGHT,
1475                BFMT_720P_WIDTH,
1476                BFMT_720P_HEIGHT,
1477                1980,
1478                750,
1479                26,
1480                20,
1481                20,
1482                0,
1483                BFMT_VERT_50Hz,
1484                50 * BFMT_FREQ_FACTOR,
1485                BFMT_PXL_74_25MHz,
1486                false,
1487                BFMT_AspectRatio_e16_9,
1488                BFMT_Orientation_e2D,
1489                74.25 * BFMT_FREQ_FACTOR,
1490                "BFMT_VideoFmt_e720p_50Hz",
1491                NULL
1492        },
1493
1494        {
1495                BFMT_VideoFmt_e576p_50Hz,
1496                BFMT_576P_WIDTH,
1497                BFMT_576P_HEIGHT,
1498                BFMT_576P_WIDTH,
1499                BFMT_576P_HEIGHT,
1500                864,
1501                625,
1502                45,
1503                39,
1504                39,
1505                0,
1506                BFMT_VERT_50Hz,
1507                50 * BFMT_FREQ_FACTOR,
1508                BFMT_PXL_27MHz,
1509                false,
1510                BFMT_AspectRatio_e4_3,
1511                BFMT_Orientation_e2D,
1512                27 * BFMT_FREQ_FACTOR,
1513                "BFMT_VideoFmt_e576p_50Hz",
1514                NULL
1515        },
1516
1517        {
1518                BFMT_VideoFmt_e240p_60Hz,
1519                720,
1520                240,
1521                720,
1522                240,
1523                858 * 2,
1524                263,
1525                22,
1526                0,
1527                0,
1528                0,
1529                BFMT_VERT_59_94Hz,
1530                59.94 * BFMT_FREQ_FACTOR,
1531                BFMT_PXL_27MHz,
1532                false,
1533                BFMT_AspectRatio_e4_3,
1534                BFMT_Orientation_e2D,
1535                27 * BFMT_FREQ_FACTOR,
1536                "BFMT_VideoFmt_e240p_60Hz",
1537                NULL
1538        },
1539
1540        {
1541                BFMT_VideoFmt_e288p_50Hz,
1542                720,
1543                BFMT_PAL_HEIGHT/2,
1544                720,
1545                BFMT_PAL_HEIGHT/2,
1546                864 * 2,
1547                313,
1548                23,
1549                0,
1550                0,
1551                0,
1552                BFMT_VERT_50Hz,
1553                50 * BFMT_FREQ_FACTOR,
1554                BFMT_PXL_27MHz,
1555                false,
1556                BFMT_AspectRatio_e4_3,
1557                BFMT_Orientation_e2D,
1558                27 * BFMT_FREQ_FACTOR,
1559                "BFMT_VideoFmt_e288p_50Hz",
1560                NULL
1561        },
1562
1563        {
1564                BFMT_VideoFmt_e1440x480p_60Hz,
1565                BFMT_480P_WIDTH * 2,
1566                BFMT_480P_HEIGHT,
1567                BFMT_480P_WIDTH * 2,
1568                480,
1569                858 * 2,
1570                525,
1571                43,
1572                30,
1573                30,
1574                0,
1575                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1576                60.00 * BFMT_FREQ_FACTOR,
1577                BFMT_PXL_54MHz_MUL_1_001 | BFMT_PXL_54MHz,
1578                false,
1579                BFMT_AspectRatio_e4_3,
1580                BFMT_Orientation_e2D,
1581                54 * BFMT_FREQ_FACTOR,
1582                "BFMT_VideoFmt_e1440x480p_60Hz",
1583                NULL
1584        },
1585
1586        {
1587                BFMT_VideoFmt_e1440x576p_50Hz,
1588                BFMT_576P_WIDTH * 2,
1589                BFMT_576P_HEIGHT,
1590                BFMT_576P_WIDTH * 2,
1591                BFMT_576P_HEIGHT,
1592                864 * 2,
1593                625,
1594                45,
1595                39,
1596                39,
1597                0,
1598                BFMT_VERT_50Hz,
1599                50 * BFMT_FREQ_FACTOR,
1600                BFMT_PXL_54MHz,
1601                false,
1602                BFMT_AspectRatio_e4_3,
1603                BFMT_Orientation_e2D,
1604                54 * BFMT_FREQ_FACTOR,
1605                "BFMT_VideoFmt_e1440x576p_50Hz",
1606                NULL
1607        },
1608
1609        {
1610                BFMT_VideoFmt_e3840x2160p_24Hz,
1611                3840,
1612                2160,
1613                3840,
1614                2160,
1615                5500,
1616                2250,
1617                83,
1618                0,
1619                0,
1620                0,
1621                BFMT_VERT_24Hz | BFMT_VERT_23_976Hz,
1622                24 * BFMT_FREQ_FACTOR,
1623                BFMT_PXL_297MHz_DIV_1_001 | BFMT_PXL_297MHz,
1624                false,
1625                BFMT_AspectRatio_e16_9,
1626                BFMT_Orientation_e2D,
1627                297 * BFMT_FREQ_FACTOR,
1628                "BFMT_VideoFmt_e3840x2160p_24Hz",
1629                NULL
1630        },
1631
1632        {
1633                BFMT_VideoFmt_e4096x2160p_24Hz,
1634                4096,
1635                2160,
1636                4096,
1637                2160,
1638                5500,
1639                2250,
1640                83,
1641                0,
1642                0,
1643                0,
1644                BFMT_VERT_24Hz,
1645                24 * BFMT_FREQ_FACTOR,
1646                BFMT_PXL_297MHz_DIV_1_001 | BFMT_PXL_297MHz,
1647                false,
1648                BFMT_AspectRatio_e16_9,
1649                BFMT_Orientation_e2D,
1650                297 * BFMT_FREQ_FACTOR,
1651                "BFMT_VideoFmt_e4096x2160p_24Hz",
1652                NULL
1653        },
1654
1655
1656#if BFMT_LEGACY_3DTV_SUPPORT
1657        {
1658                BFMT_VideoFmt_eCUSTOM1920x2160i_48Hz,
1659                BFMT_1080P_WIDTH,
1660                BFMT_1080P_HEIGHT * 2,
1661                BFMT_1080P_WIDTH,
1662                BFMT_1080P_HEIGHT * 2,
1663                2750,
1664                1125 * 2,
1665                42,
1666                41,
1667                4,
1668                0,
1669                BFMT_VERT_48Hz | BFMT_VERT_47_952Hz,
1670                48 * BFMT_FREQ_FACTOR,
1671                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1672                true,
1673                BFMT_AspectRatio_e16_9,
1674                BFMT_Orientation_e2D,
1675                148.5 * BFMT_FREQ_FACTOR,
1676                "BFMT_VideoFmt_eCUSTOM1920x2160i_48Hz",
1677                NULL
1678        },
1679
1680        {
1681                BFMT_VideoFmt_eCUSTOM1920x2160i_60Hz,
1682                BFMT_1080P_WIDTH,
1683                BFMT_1080P_HEIGHT * 2,
1684                BFMT_1080P_WIDTH,
1685                BFMT_1080P_HEIGHT * 2,
1686                2200,
1687                1125 * 2,
1688                42,
1689                41,
1690                4,
1691                0,
1692                BFMT_VERT_60Hz,
1693                60 * BFMT_FREQ_FACTOR,
1694                BFMT_PXL_148_5MHz_DIV_1_001 | BFMT_PXL_148_5MHz,
1695                true,
1696                BFMT_AspectRatio_e16_9,
1697                BFMT_Orientation_e2D,
1698                148.5 * BFMT_FREQ_FACTOR,
1699                "BFMT_VideoFmt_eCUSTOM1920x2160i_60Hz",
1700                NULL
1701        },
1702
1703#endif
1704
1705        {
1706                BFMT_VideoFmt_eCUSTOM_1440x240p_60Hz,
1707                1440,
1708                240,
1709                1440,
1710                240,
1711                858 * 2,
1712                263,
1713                22,
1714                0,
1715                0,
1716                0,
1717                BFMT_VERT_60Hz | BFMT_VERT_59_94Hz,
1718                60 * BFMT_FREQ_FACTOR,
1719                BFMT_PXL_27MHz,
1720                false,
1721                BFMT_AspectRatio_e4_3,
1722                BFMT_Orientation_e2D,
1723                27 * BFMT_FREQ_FACTOR,
1724                "BFMT_VideoFmt_eCUSTOM_1440x240p_60Hz",
1725                NULL
1726        },
1727
1728        {
1729                BFMT_VideoFmt_eCUSTOM_1440x288p_50Hz,
1730                1440,
1731                BFMT_PAL_HEIGHT/2,
1732                1440,
1733                BFMT_PAL_HEIGHT/2,
1734                864 * 2,
1735                313,
1736                23,
1737                0,
1738                0,
1739                0,
1740                BFMT_VERT_50Hz,
1741                50 * BFMT_FREQ_FACTOR,
1742                BFMT_PXL_27MHz,
1743                false,
1744                BFMT_AspectRatio_e4_3,
1745                BFMT_Orientation_e2D,
1746                27 * BFMT_FREQ_FACTOR,
1747                "BFMT_VideoFmt_eCUSTOM_1440x288p_50Hz",
1748                NULL
1749        },
1750
1751        {
1752                BFMT_VideoFmt_eCUSTOM_1366x768p,
1753                1366,
1754                768,
1755                1366,
1756                768,
1757                1440,
1758                782,
1759                13,
1760                0,
1761                0,
1762                0,
1763                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1764                60 * BFMT_FREQ_FACTOR,
1765                BFMT_PXL_67_565MHz_DIV_1_001 | BFMT_PXL_67_565MHz,
1766                false,
1767                BFMT_AspectRatio_e16_9,
1768                BFMT_Orientation_e2D,
1769                67.56 * BFMT_FREQ_FACTOR,
1770                "BFMT_VideoFmt_eCUSTOM_1366x768p",
1771                NULL
1772        },
1773
1774        {
1775                BFMT_VideoFmt_eCUSTOM_1366x768p_50Hz,
1776                1366,
1777                768,
1778                1366,
1779                768,
1780                1440,
1781                782,
1782                13,
1783                0,
1784                0,
1785                0,
1786                BFMT_VERT_50Hz,
1787                50 * BFMT_FREQ_FACTOR,
1788                BFMT_PXL_56_304MHz,
1789                false,
1790                BFMT_AspectRatio_e16_9,
1791                BFMT_Orientation_e2D,
1792                56.30 * BFMT_FREQ_FACTOR,
1793                "BFMT_VideoFmt_eCUSTOM_1366x768p_50Hz",
1794                NULL
1795        },
1796
1797        {
1798                BFMT_VideoFmt_eDVI_640x480p,
1799                BFMT_DVI_480P_WIDTH,
1800                BFMT_DVI_480P_HEIGHT,
1801                BFMT_DVI_480P_WIDTH,
1802                BFMT_DVI_480P_HEIGHT,
1803                800,
1804                525,
1805                35,
1806                0,
1807                0,
1808                0,
1809                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1810                60 * BFMT_FREQ_FACTOR,
1811                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
1812                false,
1813                BFMT_AspectRatio_e4_3,
1814                BFMT_Orientation_e2D,
1815                25.20 * BFMT_FREQ_FACTOR,
1816                "BFMT_VideoFmt_eDVI_640x480p",
1817                NULL
1818        },
1819
1820        {
1821                BFMT_VideoFmt_eDVI_640x480p_CVT,
1822                BFMT_DVI_480P_WIDTH,
1823                BFMT_DVI_480P_HEIGHT,
1824                BFMT_DVI_480P_WIDTH,
1825                BFMT_DVI_480P_HEIGHT,
1826                800,
1827                525,
1828                35,
1829                0,
1830                0,
1831                0,
1832                BFMT_VERT_60Hz,
1833                60 * BFMT_FREQ_FACTOR,
1834                BFMT_PXL_23_75MHz | BFMT_PXL_23_75MHz_DIV_1_001,
1835                false,
1836                BFMT_AspectRatio_e4_3,
1837                BFMT_Orientation_e2D,
1838                23.75 * BFMT_FREQ_FACTOR,
1839                "BFMT_VideoFmt_eDVI_640x480p_CVT",
1840                NULL
1841        },
1842
1843        /* The following VESA display formats complies with
1844           http://www.sj.broadcom.com/projects/dvt/Chip_Architecture/Clocking/Released/DVT_format_support.doc;
1845           Note: 59.94/60 Hz support frame rate tracking for TV formats input; */
1846        {
1847                BFMT_VideoFmt_eDVI_800x600p,
1848                BFMT_DVI_600P_WIDTH,
1849                BFMT_DVI_600P_HEIGHT,
1850                BFMT_DVI_600P_WIDTH,
1851                BFMT_DVI_600P_HEIGHT,
1852                1056,
1853                628,
1854                27,
1855                0,
1856                0,
1857                0,
1858                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1859                60 * BFMT_FREQ_FACTOR,
1860                BFMT_PXL_39_79MHz | BFMT_PXL_39_79MHz_DIV_1_001,
1861                false,
1862                BFMT_AspectRatio_e4_3,
1863                BFMT_Orientation_e2D,
1864                39.79 * BFMT_FREQ_FACTOR,
1865                "BFMT_VideoFmt_eDVI_800x600p",
1866                NULL
1867        },
1868
1869        {
1870                BFMT_VideoFmt_eDVI_1024x768p,
1871                BFMT_DVI_768P_WIDTH,
1872                BFMT_DVI_768P_HEIGHT,
1873                BFMT_DVI_768P_WIDTH,
1874                BFMT_DVI_768P_HEIGHT,
1875                1344,
1876                806,
1877                35,
1878                0,
1879                0,
1880                0,
1881                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1882                60 * BFMT_FREQ_FACTOR,
1883                BFMT_PXL_65MHz | BFMT_PXL_65MHz_DIV_1_001,
1884                false,
1885                BFMT_AspectRatio_e4_3,
1886                BFMT_Orientation_e2D,
1887                64.99 * BFMT_FREQ_FACTOR,
1888                "BFMT_VideoFmt_eDVI_1024x768p",
1889                NULL
1890        },
1891
1892        {
1893                BFMT_VideoFmt_eDVI_1280x768p,
1894                1280,
1895                BFMT_DVI_768P_HEIGHT,
1896                1280,
1897                BFMT_DVI_768P_HEIGHT,
1898                1664,
1899                798,
1900                27,
1901                0,
1902                0,
1903                0,
1904                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1905                60 * BFMT_FREQ_FACTOR,
1906                BFMT_PXL_65_286MHz | BFMT_PXL_65_286MHz_DIV_1_001,
1907                false,
1908                BFMT_AspectRatio_e15_9,
1909                BFMT_Orientation_e2D,
1910                79.50 * BFMT_FREQ_FACTOR,
1911                "BFMT_VideoFmt_eDVI_1280x768p",
1912                NULL
1913        },
1914
1915        {
1916                BFMT_VideoFmt_eDVI_1280x768p_Red,
1917                1280,
1918                BFMT_DVI_768P_HEIGHT,
1919                1280,
1920                BFMT_DVI_768P_HEIGHT,
1921                1440,
1922                790,
1923                19,
1924                0,
1925                0,
1926                0,
1927                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1928                60 * BFMT_FREQ_FACTOR,
1929                BFMT_PXL_65_286MHz | BFMT_PXL_65_286MHz_DIV_1_001,
1930                false,
1931                BFMT_AspectRatio_e15_9,
1932                BFMT_Orientation_e2D,
1933                68.25 * BFMT_FREQ_FACTOR,
1934                "BFMT_VideoFmt_eDVI_1280x768p_Red",
1935                NULL
1936        },
1937
1938        {
1939                BFMT_VideoFmt_eDVI_1280x720p_50Hz,
1940                BFMT_DVI_720P_WIDTH,
1941                BFMT_DVI_720P_HEIGHT,
1942                BFMT_DVI_720P_WIDTH,
1943                BFMT_DVI_720P_HEIGHT,
1944                1632,
1945                741,
1946                35,
1947                0,
1948                0,
1949                0,
1950                BFMT_VERT_50Hz,
1951                50 * BFMT_FREQ_FACTOR,
1952                BFMT_PXL_60_4656MHz,
1953                false,
1954                BFMT_AspectRatio_e4_3,
1955                BFMT_Orientation_e2D,
1956                60.47 * BFMT_FREQ_FACTOR,
1957                "BFMT_VideoFmt_eDVI_1280x720p_50Hz",
1958                NULL
1959        },
1960
1961        {
1962                BFMT_VideoFmt_eDVI_1280x720p,
1963                BFMT_DVI_720P_WIDTH,
1964                BFMT_DVI_720P_HEIGHT,
1965                BFMT_DVI_720P_WIDTH,
1966                BFMT_DVI_720P_HEIGHT,
1967                1664,
1968                746,
1969                35,
1970                0,
1971                0,
1972                0,
1973                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1974                60 * BFMT_FREQ_FACTOR,
1975                BFMT_PXL_74_25MHz | BFMT_PXL_74_25MHz_DIV_1_001,
1976                false,
1977                BFMT_AspectRatio_e4_3,
1978                BFMT_Orientation_e2D,
1979                74.48 * BFMT_FREQ_FACTOR,
1980                "BFMT_VideoFmt_eDVI_1280x720p",
1981                NULL
1982        },
1983
1984        {
1985                BFMT_VideoFmt_eDVI_1280x720p_Red,
1986                BFMT_DVI_720P_WIDTH,
1987                BFMT_DVI_720P_HEIGHT,
1988                BFMT_DVI_720P_WIDTH,
1989                BFMT_DVI_720P_HEIGHT,
1990                1440,
1991                741,
1992                35,
1993                0,
1994                0,
1995                0,
1996                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
1997                60 * BFMT_FREQ_FACTOR,
1998                BFMT_PXL_64_022MHz | BFMT_PXL_64_022MHz_DIV_1_001,
1999                false,
2000                BFMT_AspectRatio_e4_3,
2001                BFMT_Orientation_e2D,
2002                64.02 * BFMT_FREQ_FACTOR,
2003                "BFMT_VideoFmt_eDVI_1280x720p_Red",
2004                NULL
2005        },
2006
2007        {
2008                BFMT_VideoFmt_eDVI_640x350p_60Hz,
2009                640,
2010                350,
2011                640,
2012                350,
2013                800,
2014                525,
2015                75,
2016                0,
2017                0,
2018                0,
2019                BFMT_VERT_60Hz | BFMT_VERT_59_94Hz,
2020                60 * BFMT_FREQ_FACTOR,
2021                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2022                false,
2023                BFMT_AspectRatio_e4_3,
2024                BFMT_Orientation_e2D,
2025                25.20 * BFMT_FREQ_FACTOR,
2026                "BFMT_VideoFmt_eDVI_640x350p_60Hz",
2027                NULL
2028        },
2029
2030        {
2031                BFMT_VideoFmt_eDVI_640x350p_70Hz,
2032                640,
2033                350,
2034                640,
2035                350,
2036                800,
2037                450,
2038                62,
2039                0,
2040                0,
2041                0,
2042                BFMT_VERT_70Hz,
2043                70 * BFMT_FREQ_FACTOR,
2044                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2045                false,
2046                BFMT_AspectRatio_e4_3,
2047                BFMT_Orientation_e2D,
2048                25.20 * BFMT_FREQ_FACTOR,
2049                "BFMT_VideoFmt_eDVI_640x350p_70Hz",
2050                NULL
2051        },
2052
2053        {
2054                BFMT_VideoFmt_eDVI_640x350p_72Hz,
2055                640,
2056                350,
2057                640,
2058                350,
2059                832,
2060                445,
2061                63,
2062                0,
2063                0,
2064                0,
2065                BFMT_VERT_72Hz,
2066                72 * BFMT_FREQ_FACTOR,
2067                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2068                false,
2069                BFMT_AspectRatio_e4_3,
2070                BFMT_Orientation_e2D,
2071                25.20 * BFMT_FREQ_FACTOR,
2072                "BFMT_VideoFmt_eDVI_640x350p_72Hz",
2073                NULL
2074        },
2075
2076        {
2077                BFMT_VideoFmt_eDVI_640x350p_75Hz,
2078                640,
2079                350,
2080                640,
2081                350,
2082                832,
2083                445,
2084                63,
2085                0,
2086                0,
2087                0,
2088                BFMT_VERT_75Hz,
2089                75 * BFMT_FREQ_FACTOR,
2090                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2091                false,
2092                BFMT_AspectRatio_e4_3,
2093                BFMT_Orientation_e2D,
2094                25.20 * BFMT_FREQ_FACTOR,
2095                "BFMT_VideoFmt_eDVI_640x350p_75Hz",
2096                NULL
2097        },
2098
2099        {
2100                BFMT_VideoFmt_eDVI_640x350p_85Hz,
2101                640,
2102                350,
2103                640,
2104                350,
2105                832,
2106                445,
2107                63,
2108                0,
2109                0,
2110                0,
2111                BFMT_VERT_85Hz,
2112                85 * BFMT_FREQ_FACTOR,
2113                BFMT_PXL_31_50MHz,
2114                false,
2115                BFMT_AspectRatio_e4_3,
2116                BFMT_Orientation_e2D,
2117                31.50 * BFMT_FREQ_FACTOR,
2118                "BFMT_VideoFmt_eDVI_640x350p_85Hz",
2119                NULL
2120        },
2121
2122        {
2123                BFMT_VideoFmt_eDVI_640x400p_60Hz,
2124                640,
2125                400,
2126                640,
2127                400,
2128                800,
2129                525,
2130                50,
2131                0,
2132                0,
2133                0,
2134                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
2135                60 * BFMT_FREQ_FACTOR,
2136                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2137                false,
2138                BFMT_AspectRatio_e4_3,
2139                BFMT_Orientation_e2D,
2140                25.20 * BFMT_FREQ_FACTOR,
2141                "BFMT_VideoFmt_eDVI_640x400p_60Hz",
2142                NULL
2143        },
2144
2145        {
2146                BFMT_VideoFmt_eDVI_640x400p_70Hz,
2147                640,
2148                400,
2149                640,
2150                400,
2151                800,
2152                450,
2153                12,
2154                0,
2155                0,
2156                0,
2157                BFMT_VERT_70Hz,
2158                70 * BFMT_FREQ_FACTOR,
2159                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2160                false,
2161                BFMT_AspectRatio_e4_3,
2162                BFMT_Orientation_e2D,
2163                25.20 * BFMT_FREQ_FACTOR,
2164                "BFMT_VideoFmt_eDVI_640x400p_70Hz",
2165                NULL
2166        },
2167
2168        {
2169                BFMT_VideoFmt_eDVI_640x400p_72Hz,
2170                640,
2171                400,
2172                640,
2173                400,
2174                832,
2175                425,
2176                12,
2177                0,
2178                0,
2179                0,
2180                BFMT_VERT_72Hz,
2181                72 * BFMT_FREQ_FACTOR,
2182                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2183                false,
2184                BFMT_AspectRatio_e4_3,
2185                BFMT_Orientation_e2D,
2186                25.20 * BFMT_FREQ_FACTOR,
2187                "BFMT_VideoFmt_eDVI_640x400p_72Hz",
2188                NULL
2189        },
2190
2191        {
2192                BFMT_VideoFmt_eDVI_640x400p_75Hz,
2193                640,
2194                400,
2195                640,
2196                400,
2197                832,
2198                425,
2199                12,
2200                0,
2201                0,
2202                0,
2203                BFMT_VERT_75Hz,
2204                75 * BFMT_FREQ_FACTOR,
2205                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2206                false,
2207                BFMT_AspectRatio_e4_3,
2208                BFMT_Orientation_e2D,
2209                25.20 * BFMT_FREQ_FACTOR,
2210                "BFMT_VideoFmt_eDVI_640x400p_75Hz",
2211                NULL
2212        },
2213
2214        {
2215                BFMT_VideoFmt_eDVI_640x400p_85Hz,
2216                640,
2217                400,
2218                640,
2219                400,
2220                832,
2221                445,
2222                44,
2223                0,
2224                0,
2225                0,
2226                BFMT_VERT_85Hz,
2227                85 * BFMT_FREQ_FACTOR,
2228                BFMT_PXL_31_50MHz,
2229                false,
2230                BFMT_AspectRatio_e4_3,
2231                BFMT_Orientation_e2D,
2232                31.50 * BFMT_FREQ_FACTOR,
2233                "BFMT_VideoFmt_eDVI_640x400p_85Hz",
2234                NULL
2235        },
2236
2237        {
2238                BFMT_VideoFmt_eDVI_640x480p_66Hz,
2239                640,
2240                480,
2241                640,
2242                480,
2243                864,
2244                525,
2245                42,
2246                0,
2247                0,
2248                0,
2249                BFMT_VERT_66Hz,
2250                66.67 * BFMT_FREQ_FACTOR,
2251                BFMT_PXL_162MHz,
2252                false,
2253                BFMT_AspectRatio_e4_3,
2254                BFMT_Orientation_e2D,
2255                30.24 * BFMT_FREQ_FACTOR,
2256                "BFMT_VideoFmt_eDVI_640x480p_66Hz",
2257                NULL
2258        },
2259
2260        {
2261                BFMT_VideoFmt_eDVI_640x480p_70Hz,
2262                640,
2263                480,
2264                640,
2265                480,
2266                832,
2267                503,
2268                23,
2269                0,
2270                0,
2271                0,
2272                BFMT_VERT_70Hz,
2273                70 * BFMT_FREQ_FACTOR,
2274                BFMT_PXL_25_2MHz_DIV_1_001 | BFMT_PXL_25_2MHz,
2275                false,
2276                BFMT_AspectRatio_e4_3,
2277                BFMT_Orientation_e2D,
2278                25.20 * BFMT_FREQ_FACTOR,
2279                "BFMT_VideoFmt_eDVI_640x480p_70Hz",
2280                NULL
2281        },
2282
2283        {
2284                BFMT_VideoFmt_eDVI_640x480p_72Hz,
2285                640,
2286                480,
2287                640,
2288                480,
2289                832,
2290                520,
2291                31,
2292                0,
2293                0,
2294                0,
2295                BFMT_VERT_72Hz,
2296                72.81 * BFMT_FREQ_FACTOR,
2297                BFMT_PXL_31_50MHz,
2298                false,
2299                BFMT_AspectRatio_e4_3,
2300                BFMT_Orientation_e2D,
2301                31.50 * BFMT_FREQ_FACTOR,
2302                "BFMT_VideoFmt_eDVI_640x480p_72Hz",
2303                NULL
2304        },
2305
2306        {
2307                BFMT_VideoFmt_eDVI_640x480p_75Hz,
2308                640,
2309                480,
2310                640,
2311                480,
2312                840,
2313                500,
2314                19,
2315                0,
2316                0,
2317                0,
2318                BFMT_VERT_75Hz,
2319                75 * BFMT_FREQ_FACTOR,
2320                BFMT_PXL_31_50MHz,
2321                false,
2322                BFMT_AspectRatio_e4_3,
2323                BFMT_Orientation_e2D,
2324                31.50 * BFMT_FREQ_FACTOR,
2325                "BFMT_VideoFmt_eDVI_640x480p_75Hz",
2326                NULL
2327        },
2328
2329        {
2330                BFMT_VideoFmt_eDVI_640x480p_85Hz,
2331                640,
2332                480,
2333                640,
2334                480,
2335                832,
2336                509,
2337                28,
2338                0,
2339                0,
2340                0,
2341                BFMT_VERT_85Hz,
2342                8500,
2343                BFMT_PXL_36_00MHz,
2344                false,
2345                BFMT_AspectRatio_e4_3,
2346                BFMT_Orientation_e2D,
2347                3600,
2348                "BFMT_VideoFmt_eDVI_640x480p_85Hz",
2349                NULL
2350        },
2351        {
2352                BFMT_VideoFmt_eDVI_720x400p_60Hz,
2353                720,
2354                400,
2355                720,
2356                400,
2357                900,
2358                525,
2359                19,
2360                0,
2361                0,
2362                0,
2363                BFMT_VERT_59_94Hz | BFMT_VERT_60Hz,
2364                60 * BFMT_FREQ_FACTOR,
2365                BFMT_PXL_40MHz,
2366                false,
2367                BFMT_AspectRatio_e4_3,
2368                BFMT_Orientation_e2D,
2369                40 * BFMT_FREQ_FACTOR,
2370                "BFMT_VideoFmt_eDVI_720x400p_60Hz",
2371                NULL
2372        },
2373
2374        {
2375                BFMT_VideoFmt_eDVI_720x400p_70Hz,
2376                720,
2377                400,
2378                720,
2379                400,
2380                900,
2381                449,
2382                36,
2383                0,
2384                0,
2385                0,
2386                BFMT_VERT_70Hz,
2387                70 * BFMT_FREQ_FACTOR,
2388                BFMT_PXL_31_50MHz,
2389                false,
2390                BFMT_AspectRatio_e4_3,
2391                BFMT_Orientation_e2D,
2392                28.32 * BFMT_FREQ_FACTOR,
2393                "BFMT_VideoFmt_eDVI_720x400p_70Hz",
2394                NULL
2395        },
2396
2397        {
2398                BFMT_VideoFmt_eDVI_720x400p_72Hz,
2399                720,
2400                400,
2401                720,
2402                400,
2403                936,
2404                525,
2405                20,
2406                0,
2407                0,
2408                0,
2409                BFMT_VERT_72Hz,
2410                72 * BFMT_FREQ_FACTOR,
2411                BFMT_PXL_40MHz,
2412                false,
2413                BFMT_AspectRatio_e4_3,
2414                BFMT_Orientation_e2D,
2415                40 * BFMT_FREQ_FACTOR,
2416                "BFMT_VideoFmt_eDVI_720x400p_72Hz",
2417                NULL
2418        },
2419
2420        {
2421                BFMT_VideoFmt_eDVI_720x400p_75Hz,
2422                720,
2423                400,
2424                720,
2425                400,
2426                936,
2427                525,
2428                21,
2429                0,
2430                0,
2431                0,
2432                BFMT_VERT_75Hz,
2433                75 * BFMT_FREQ_FACTOR,
2434                BFMT_PXL_40MHz,
2435                false,
2436                BFMT_AspectRatio_e4_3,
2437                BFMT_Orientation_e2D,
2438                40 * BFMT_FREQ_FACTOR,
2439                "BFMT_VideoFmt_eDVI_720x400p_75Hz",
2440                NULL
2441        },
2442
2443        {
2444                BFMT_VideoFmt_eDVI_720x400p_85Hz,
2445                720,
2446                400,
2447                720,
2448                400,
2449                936,
2450                446,
2451                45,
2452                0,
2453                0,
2454                0,
2455                BFMT_VERT_85Hz,
2456                85 * BFMT_FREQ_FACTOR,
2457                BFMT_PXL_35_50MHz,
2458                false,
2459                BFMT_AspectRatio_e4_3,
2460                BFMT_Orientation_e2D,
2461                35.50 * BFMT_FREQ_FACTOR,
2462                "BFMT_VideoFmt_eDVI_720x400p_85Hz",
2463                NULL
2464        },
2465
2466        {
2467                BFMT_VideoFmt_eDVI_800x600p_56Hz,
2468                800,
2469                600,
2470                800,
2471                600,
2472                1024,
2473                625,
2474                24,
2475                0,
2476                0,
2477                0,
2478                BFMT_VERT_56Hz,
2479                56 * BFMT_FREQ_FACTOR,
2480                BFMT_PXL_36_00MHz,
2481                false,
2482                BFMT_AspectRatio_e4_3,
2483                BFMT_Orientation_e2D,
2484                36 * BFMT_FREQ_FACTOR,
2485                "BFMT_VideoFmt_eDVI_800x600p_56Hz",
2486                NULL
2487        },
2488
2489        {
2490                BFMT_VideoFmt_eDVI_800x600p_59Hz_Red,
2491                800,
2492                600,
2493                800,
2494                600,
2495                1024,
2496                624,
2497                21,
2498                0,
2499                0,
2500                0,
2501                BFMT_VERT_60Hz |BFMT_VERT_59_94Hz,
2502                60 * BFMT_FREQ_FACTOR,
2503                BFMT_PXL_162MHz,
2504                false,
2505                BFMT_AspectRatio_e4_3,
2506                BFMT_Orientation_e2D,
2507                38.25 * BFMT_FREQ_FACTOR,
2508                "BFMT_VideoFmt_eDVI_800x600p_59Hz_Red",
2509                NULL
2510        },
2511
2512        {
2513                BFMT_VideoFmt_eDVI_800x600p_70Hz,
2514                800,
2515                400,
2516                800,
2517                400,
2518                1056,
2519                628,
2520                28,
2521                0,
2522                0,
2523                0,
2524                BFMT_VERT_70Hz,
2525                70 * BFMT_FREQ_FACTOR,
2526                BFMT_PXL_50_00MHz,
2527                false,
2528                BFMT_AspectRatio_e4_3,
2529                BFMT_Orientation_e2D,
2530                50 * BFMT_FREQ_FACTOR,
2531                "BFMT_VideoFmt_eDVI_800x600p_70Hz",
2532                NULL
2533        },
2534
2535        {
2536                BFMT_VideoFmt_eDVI_800x600p_72Hz,
2537                800,
2538                600,
2539                800,
2540                600,
2541                1040,
2542                666,
2543                29,
2544                0,
2545                0,
2546                0,
2547                BFMT_VERT_72Hz,
2548                72.19 * BFMT_FREQ_FACTOR,
2549                BFMT_PXL_50_00MHz,
2550                false,
2551                BFMT_AspectRatio_e4_3,
2552                BFMT_Orientation_e2D,
2553                50 * BFMT_FREQ_FACTOR,
2554                "BFMT_VideoFmt_eDVI_800x600p_72Hz",
2555                NULL
2556        },
2557
2558        {
2559                BFMT_VideoFmt_eDVI_800x600p_75Hz,
2560                800,
2561                600,
2562                800,
2563                600,
2564                1056,
2565                625,
2566                24,
2567                0,
2568                0,
2569                0,
2570                BFMT_VERT_75Hz,
2571                75 * BFMT_FREQ_FACTOR,
2572                BFMT_PXL_49_50MHz,
2573                false,
2574                BFMT_AspectRatio_e4_3,
2575                BFMT_Orientation_e2D,
2576                49.50 * BFMT_FREQ_FACTOR,
2577                "BFMT_VideoFmt_eDVI_800x600p_75Hz",
2578                NULL
2579        },
2580
2581        {
2582                BFMT_VideoFmt_eDVI_800x600p_85Hz,
2583                800,
2584                600,
2585                800,
2586                600,
2587                1048,
2588                631,
2589                30,
2590                0,
2591                0,
2592                0,
2593                BFMT_VERT_85Hz,
2594                85 * BFMT_FREQ_FACTOR,
2595                BFMT_PXL_56_25MHz,
2596                false,
2597                BFMT_AspectRatio_e4_3,
2598                BFMT_Orientation_e2D,
2599                56.25 * BFMT_FREQ_FACTOR,
2600                "BFMT_VideoFmt_eDVI_800x600p_85Hz",
2601                NULL
2602        },
2603
2604        {
2605                BFMT_VideoFmt_eDVI_1024x768p_66Hz,
2606                BFMT_DVI_768P_WIDTH,
2607                BFMT_DVI_768P_HEIGHT,
2608                BFMT_DVI_768P_WIDTH,
2609                BFMT_DVI_768P_HEIGHT,
2610                1328,
2611                816,
2612                40,
2613                0,
2614                0,
2615                0,
2616                BFMT_VERT_66Hz,
2617                66.11 * BFMT_FREQ_FACTOR,
2618                BFMT_PXL_162MHz,
2619                false,
2620                BFMT_AspectRatio_e4_3,
2621                BFMT_Orientation_e2D,
2622                71.64 * BFMT_FREQ_FACTOR,
2623                "BFMT_VideoFmt_eDVI_1024x768p_66Hz",
2624                NULL
2625        },
2626
2627        {
2628                BFMT_VideoFmt_eDVI_1024x768p_70Hz,
2629                BFMT_DVI_768P_WIDTH,
2630                BFMT_DVI_768P_HEIGHT,
2631                BFMT_DVI_768P_WIDTH,
2632                BFMT_DVI_768P_HEIGHT,
2633                1328,
2634                806,
2635                35,
2636                0,
2637                0,
2638                0,
2639                BFMT_VERT_70Hz,
2640                70 * BFMT_FREQ_FACTOR,
2641                BFMT_PXL_75_00MHz,
2642                false,
2643                BFMT_AspectRatio_e4_3,
2644                BFMT_Orientation_e2D,
2645                75 * BFMT_FREQ_FACTOR,
2646                "BFMT_VideoFmt_eDVI_1024x768p_70Hz",
2647                NULL
2648        },
2649
2650        {
2651                BFMT_VideoFmt_eDVI_1024x768p_72Hz,
2652                BFMT_DVI_768P_WIDTH,
2653                BFMT_DVI_768P_HEIGHT,
2654                BFMT_DVI_768P_WIDTH,
2655                BFMT_DVI_768P_HEIGHT,
2656                1344,
2657                806,
2658                35,
2659                0,
2660                0,
2661                0,
2662                BFMT_VERT_72Hz,
2663                72 * BFMT_FREQ_FACTOR,
2664                BFMT_PXL_65MHz,
2665                false,
2666                BFMT_AspectRatio_e4_3,
2667                BFMT_Orientation_e2D,
2668                65 * BFMT_FREQ_FACTOR,
2669                "BFMT_VideoFmt_eDVI_1024x768p_72Hz",
2670                NULL
2671        },
2672
2673        {
2674                BFMT_VideoFmt_eDVI_1024x768p_75Hz,
2675                BFMT_DVI_768P_WIDTH,
2676                BFMT_DVI_768P_HEIGHT,
2677                BFMT_DVI_768P_WIDTH,
2678                BFMT_DVI_768P_HEIGHT,
2679                1312,
2680                800,
2681                31,
2682                0,
2683                0,
2684                0,
2685                BFMT_VERT_75Hz,
2686                75 * BFMT_FREQ_FACTOR,
2687                BFMT_PXL_78_75MHz,
2688                false,
2689                BFMT_AspectRatio_e4_3,
2690                BFMT_Orientation_e2D,
2691                78.75 * BFMT_FREQ_FACTOR,
2692                "BFMT_VideoFmt_eDVI_1024x768p_75Hz",
2693                NULL
2694        },
2695
2696#if 0 /* TODO: to review */
2697        {
2698                BFMT_VideoFmt_eDVI_1024x768p_75Hz_Red,
2699                BFMT_DVI_768P_WIDTH,
2700                BFMT_DVI_768P_HEIGHT,
2701                BFMT_DVI_768P_WIDTH,
2702                BFMT_DVI_768P_HEIGHT,
2703                1328,
2704                804,
2705                31,
2706                0,
2707                0,
2708                0,
2709                BFMT_VERT_75Hz,
2710                75 * BFMT_FREQ_FACTOR,
2711                BFMT_PXL_78_75MHz,
2712                false,
2713                BFMT_AspectRatio_e4_3,
2714                BFMT_Orientation_e2D,
2715                80.00 * BFMT_FREQ_FACTOR,
2716                "BFMT_VideoFmt_eDVI_1024x768p_75Hz_Red",
2717                NULL
2718        },
2719#endif
2720
2721        {
2722                BFMT_VideoFmt_eDVI_1024x768p_85Hz,
2723                BFMT_DVI_768P_WIDTH,
2724                BFMT_DVI_768P_HEIGHT,
2725                BFMT_DVI_768P_WIDTH,
2726                BFMT_DVI_768P_HEIGHT,
2727                1376,
2728                808,
2729                39,
2730                0,
2731                0,
2732                0,
2733                BFMT_VERT_85Hz,
2734                85 * BFMT_FREQ_FACTOR,
2735                BFMT_PXL_94_50MHz,
2736                false,
2737                BFMT_AspectRatio_e4_3,
2738                BFMT_Orientation_e2D,
2739                94.50 * BFMT_FREQ_FACTOR,
2740                "BFMT_VideoFmt_eDVI_1024x768p_85Hz",
2741                NULL
2742        },
2743
2744        {
2745                BFMT_VideoFmt_eDVI_1280x720p_70Hz,
2746                BFMT_DVI_720P_WIDTH,
2747                BFMT_DVI_720P_HEIGHT,
2748                BFMT_DVI_720P_WIDTH,
2749                BFMT_DVI_720P_HEIGHT,
2750                1664,
2751                746,
2752                32,
2753                0,
2754                0,
2755                0,
2756                BFMT_VERT_70Hz,
2757                70.00 * BFMT_FREQ_FACTOR,
2758                BFMT_PXL_74_375MHz,
2759                false,
2760                BFMT_AspectRatio_e4_3,
2761                BFMT_Orientation_e2D,
2762                74.37 * BFMT_FREQ_FACTOR,
2763                "BFMT_VideoFmt_eDVI_1280x720p_70Hz",
2764                NULL
2765        },
2766
2767        {
2768                BFMT_VideoFmt_eDVI_1280x720p_72Hz,
2769                BFMT_DVI_720P_WIDTH,
2770                BFMT_DVI_720P_HEIGHT,
2771                BFMT_DVI_720P_WIDTH,
2772                BFMT_DVI_720P_HEIGHT,
2773                1664,
2774                746,
2775                33,
2776                0,
2777                0,
2778                0,
2779                BFMT_VERT_72Hz,
2780                72.00 * BFMT_FREQ_FACTOR,
2781                BFMT_PXL_74_375MHz,
2782                false,
2783                BFMT_AspectRatio_e4_3,
2784                BFMT_Orientation_e2D,
2785                74.37 * BFMT_FREQ_FACTOR,
2786                "BFMT_VideoFmt_eDVI_1280x720p_72Hz",
2787                NULL
2788        },
2789
2790        {
2791                BFMT_VideoFmt_eDVI_1280x720p_75Hz,
2792                BFMT_DVI_720P_WIDTH,
2793                BFMT_DVI_720P_HEIGHT,
2794                BFMT_DVI_720P_WIDTH,
2795                BFMT_DVI_720P_HEIGHT,
2796                1664,
2797                746,
2798                35,
2799                0,
2800                0,
2801                0,
2802                BFMT_VERT_75Hz,
2803                75.00 * BFMT_FREQ_FACTOR,
2804                BFMT_PXL_74_375MHz,
2805                false,
2806                BFMT_AspectRatio_e4_3,
2807                BFMT_Orientation_e2D,
2808                74.37 * BFMT_FREQ_FACTOR,
2809                "BFMT_VideoFmt_eDVI_1280x720p_75Hz",
2810                NULL
2811        },
2812
2813        {
2814                BFMT_VideoFmt_eDVI_1280x720p_85Hz,
2815                BFMT_DVI_720P_WIDTH,
2816                BFMT_DVI_720P_HEIGHT,
2817                BFMT_DVI_720P_WIDTH,
2818                BFMT_DVI_720P_HEIGHT,
2819                1664,
2820                746,
2821                39,
2822                0,
2823                0,
2824                0,
2825                BFMT_VERT_85Hz,
2826                85.00 * BFMT_FREQ_FACTOR,
2827                BFMT_PXL_74_375MHz,
2828                false,
2829                BFMT_AspectRatio_e4_3,
2830                BFMT_Orientation_e2D,
2831                74.37 * BFMT_FREQ_FACTOR,
2832                "BFMT_VideoFmt_eDVI_1280x720p_85Hz",
2833                NULL
2834        },
2835
2836        /* TODO: Fill in these */
2837        {
2838                BFMT_VideoFmt_eDVI_1024x768i_87Hz,
2839                1024,
2840                768,
2841                1024,
2842                768,
2843                1264,
2844                817,
2845                24,
2846                0,
2847                0,
2848                0,
2849                BFMT_VERT_87Hz,
2850                87.00 * BFMT_FREQ_FACTOR,
2851                BFMT_PXL_44_900MHz,
2852                true,
2853                BFMT_AspectRatio_e4_3,
2854                BFMT_Orientation_e2D,
2855                44.90 * BFMT_FREQ_FACTOR,
2856                "BFMT_VideoFmt_eDVI_1024x768i_87Hz",
2857                NULL
2858        },
2859
2860        {
2861                BFMT_VideoFmt_eDVI_1152x864p_75Hz,
2862                1152,
2863                864,
2864                1152,
2865                864,
2866                1152+448,
2867                864+36,
2868                35,
2869                0,
2870                0,
2871                0,
2872                BFMT_VERT_75Hz,
2873                75.00 * BFMT_FREQ_FACTOR,
2874                BFMT_PXL_162MHz,
2875                false,
2876                BFMT_AspectRatio_e4_3,
2877                BFMT_Orientation_e2D,
2878                108.00 * BFMT_FREQ_FACTOR,
2879                "BFMT_VideoFmt_eDVI_1152x864p_75Hz",
2880                NULL
2881        },
2882
2883        {
2884                BFMT_VideoFmt_eDVI_1280x768p_75Hz,
2885                1280,
2886                768,
2887                1280,
2888                768,
2889                1696,
2890                805,
2891                34,
2892                0,
2893                0,
2894                0,
2895                BFMT_VERT_75Hz,
2896                75.00 * BFMT_FREQ_FACTOR,
2897                BFMT_PXL_162MHz,
2898                false,
2899                BFMT_AspectRatio_e15_9,
2900                BFMT_Orientation_e2D,
2901                102.25 * BFMT_FREQ_FACTOR,
2902                "BFMT_VideoFmt_eDVI_1280x768p_75Hz",
2903                NULL
2904        },
2905
2906        {
2907                BFMT_VideoFmt_eDVI_1280x768p_85Hz,
2908                1280,
2909                768,
2910                1280,
2911                768,
2912                1712,
2913                809,
2914                38,
2915                0,
2916                0,
2917                0,
2918                BFMT_VERT_85Hz,
2919                85.00 * BFMT_FREQ_FACTOR,
2920                BFMT_PXL_162MHz,
2921                false,
2922                BFMT_AspectRatio_e15_9,
2923                BFMT_Orientation_e2D,
2924                117.50 * BFMT_FREQ_FACTOR,
2925                "BFMT_VideoFmt_eDVI_1280x768p_85Hz",
2926                NULL
2927        },
2928
2929        {
2930                BFMT_VideoFmt_eDVI_1280x800p_60Hz,
2931                1280,
2932                800,
2933                1280,
2934                800,
2935                1680,
2936                828,
2937                28,
2938                0,
2939                0,
2940                0,
2941                BFMT_VERT_60Hz,
2942                60 * BFMT_FREQ_FACTOR,
2943                BFMT_PXL_83_5MHz | BFMT_PXL_83_5MHz_DIV_1_001,
2944                false,
2945                BFMT_AspectRatio_e15_9,
2946                BFMT_Orientation_e2D,
2947                83.50 * BFMT_FREQ_FACTOR,
2948                "BFMT_VideoFmt_eDVI_1280x800p_60Hz",
2949                NULL
2950        },
2951
2952        {
2953                BFMT_VideoFmt_eDVI_1280x960p_60Hz,
2954                1280,
2955                960,
2956                1280,
2957                960,
2958                1800,
2959                1000,
2960                39,
2961                0,
2962                0,
2963                0,
2964                BFMT_VERT_60Hz,
2965                60.00 * BFMT_FREQ_FACTOR,
2966                BFMT_PXL_162MHz,
2967                false,
2968                BFMT_AspectRatio_e4_3,
2969                BFMT_Orientation_e2D,
2970                108.00 * BFMT_FREQ_FACTOR,
2971                "BFMT_VideoFmt_eDVI_1280x960p_60Hz",
2972                NULL
2973        },
2974
2975        {
2976                BFMT_VideoFmt_eDVI_1280x960p_85Hz,
2977                1280,
2978                960,
2979                1280,
2980                960,
2981                1728,
2982                1011,
2983                50,
2984                0,
2985                0,
2986                0,
2987                BFMT_VERT_85Hz,
2988                85.00 * BFMT_FREQ_FACTOR,
2989                BFMT_PXL_162MHz,
2990                false,
2991                BFMT_AspectRatio_e4_3,
2992                BFMT_Orientation_e2D,
2993                148.25 * BFMT_FREQ_FACTOR,
2994                "BFMT_VideoFmt_eDVI_1280x960p_85Hz",
2995                NULL
2996        },
2997
2998        {
2999                BFMT_VideoFmt_eDVI_1280x1024p_60Hz,
3000                1280,
3001                1024,
3002                1280,
3003                1024,
3004                1712,
3005                1066,
3006                39,
3007                0,
3008                0,
3009                0,
3010                BFMT_VERT_60Hz,
3011                60.00 * BFMT_FREQ_FACTOR,
3012                BFMT_PXL_108MHz | BFMT_PXL_108MHz_DIV_1_001,
3013                false,
3014                BFMT_AspectRatio_e4_3,
3015                BFMT_Orientation_e2D,
3016                108.00 * BFMT_FREQ_FACTOR,
3017                "BFMT_VideoFmt_eDVI_1280x1024p_60Hz",
3018                NULL
3019        },
3020
3021        {
3022                BFMT_VideoFmt_eDVI_1280x1024p_69Hz,
3023                1280,
3024                1024,
3025                1280,
3026                1024,
3027                1680,
3028                1063,
3029                38,
3030                0,
3031                0,
3032                0,
3033                BFMT_VERT_70Hz,
3034                69.99 * BFMT_FREQ_FACTOR,
3035                BFMT_PXL_162MHz,
3036                false,
3037                BFMT_AspectRatio_e4_3,
3038                BFMT_Orientation_e2D,
3039                125.00 * BFMT_FREQ_FACTOR,
3040                "BFMT_VideoFmt_eDVI_1280x1024p_69Hz",
3041                NULL
3042        },
3043
3044        {
3045                BFMT_VideoFmt_eDVI_1280x1024p_75Hz,
3046                1280,
3047                1024,
3048                1280,
3049                1024,
3050                1688,
3051                1066,
3052                41,
3053                0,
3054                0,
3055                0,
3056                BFMT_VERT_75Hz,
3057                75.00 * BFMT_FREQ_FACTOR,
3058                BFMT_PXL_162MHz,
3059                false,
3060                BFMT_AspectRatio_e4_3,
3061                BFMT_Orientation_e2D,
3062                135.00 * BFMT_FREQ_FACTOR,
3063                "BFMT_VideoFmt_eDVI_1280x1024p_75Hz",
3064                NULL
3065        },
3066
3067        {
3068                BFMT_VideoFmt_eDVI_1280x1024p_85Hz,
3069                1280,
3070                1024,
3071                1280,
3072                1024,
3073                1728,
3074                1072,
3075                47,
3076                0,
3077                0,
3078                0,
3079                BFMT_VERT_85Hz,
3080                85.00 * BFMT_FREQ_FACTOR,
3081                BFMT_PXL_162MHz,
3082                false,
3083                BFMT_AspectRatio_e4_3,
3084                BFMT_Orientation_e2D,
3085                157.00 * BFMT_FREQ_FACTOR,
3086                "BFMT_VideoFmt_eDVI_1280x1024p_85Hz",
3087                NULL
3088        },
3089
3090        {
3091                BFMT_VideoFmt_eDVI_832x624p_75Hz,
3092                832,
3093                624,
3094                832,
3095                624,
3096                1152,
3097                667,
3098                35,
3099                0,
3100                0,
3101                0,
3102                BFMT_VERT_75Hz,
3103                75.00 * BFMT_FREQ_FACTOR,
3104                BFMT_PXL_56_25MHz,
3105                false,
3106                BFMT_AspectRatio_e4_3,
3107                BFMT_Orientation_e2D,
3108                56.25 * BFMT_FREQ_FACTOR,
3109                "BFMT_VideoFmt_eDVI_832x624p_75Hz",
3110                NULL
3111        },
3112
3113
3114        {
3115                BFMT_VideoFmt_eDVI_1360x768p_60Hz,
3116                1360,
3117                BFMT_DVI_768P_HEIGHT,
3118                1360,
3119                BFMT_DVI_768P_HEIGHT,
3120                1792,
3121                795,
3122                24,
3123                0,
3124                0,
3125                0,
3126                BFMT_VERT_60Hz,
3127                60.00 * BFMT_FREQ_FACTOR,
3128                BFMT_PXL_85_5MHz,
3129                false,
3130                BFMT_AspectRatio_e16_9,
3131                BFMT_Orientation_e2D,
3132                85.50 * BFMT_FREQ_FACTOR,
3133                "BFMT_VideoFmt_eDVI_1360x768p_60Hz",
3134                NULL
3135        },
3136
3137        {
3138                BFMT_VideoFmt_eDVI_1366x768p_60Hz,
3139                1366,
3140                BFMT_DVI_768P_HEIGHT,
3141                1366,
3142                BFMT_DVI_768P_HEIGHT,
3143                1528,
3144                790,
3145                20,
3146                0,
3147                0,
3148                0,
3149                BFMT_VERT_60Hz,
3150                60.00 * BFMT_FREQ_FACTOR,
3151                BFMT_PXL_85_5MHz | BFMT_PXL_85_5MHz_DIV_1_001,
3152                false,
3153                BFMT_AspectRatio_e16_9,
3154                BFMT_Orientation_e2D,
3155                85.5 * BFMT_FREQ_FACTOR,
3156                "BFMT_VideoFmt_eDVI_1366x768p_60Hz",
3157                NULL
3158        },
3159
3160        {
3161                BFMT_VideoFmt_eDVI_1400x1050p_60Hz,
3162                1400,
3163                1050,
3164                1400,
3165                1050,
3166                1864,
3167                1089,
3168                36,
3169                0,
3170                0,
3171                0,
3172                BFMT_VERT_60Hz,
3173                60.00 * BFMT_FREQ_FACTOR,
3174                BFMT_PXL_121_75MHz,
3175                false,
3176                BFMT_AspectRatio_e16_9,
3177                BFMT_Orientation_e2D,
3178                121.75 * BFMT_FREQ_FACTOR,
3179                "BFMT_VideoFmt_eDVI_1400x1050p_60Hz",
3180                NULL
3181        },
3182
3183        {
3184                BFMT_VideoFmt_eDVI_1400x1050p_60Hz_Red,
3185                1400,
3186                1050,
3187                1400,
3188                1050,
3189                1560,
3190                1080,
3191                27,
3192                0,
3193                0,
3194                0,
3195                BFMT_VERT_60Hz,
3196                60.00 * BFMT_FREQ_FACTOR,
3197                BFMT_PXL_101MHz,
3198                false,
3199                BFMT_AspectRatio_e16_9,
3200                BFMT_Orientation_e2D,
3201                101.00 * BFMT_FREQ_FACTOR,
3202                "BFMT_VideoFmt_eDVI_1400x1050p_60Hz_Red",
3203                NULL
3204        },
3205
3206        {
3207                BFMT_VideoFmt_eDVI_1400x1050p_75Hz,
3208                1400,
3209                1050,
3210                1400,
3211                1050,
3212                1896,
3213                1099,
3214                46,
3215                0,
3216                0,
3217                0,
3218                BFMT_VERT_75Hz,
3219                75.00 * BFMT_FREQ_FACTOR,
3220                BFMT_PXL_156MHz,
3221                false,
3222                BFMT_AspectRatio_e16_9,
3223                BFMT_Orientation_e2D,
3224                156.00 * BFMT_FREQ_FACTOR,
3225                "BFMT_VideoFmt_eDVI_1400x1050p_75Hz",
3226                NULL
3227        },
3228
3229        {
3230                BFMT_VideoFmt_eDVI_1600x1200p_60Hz,
3231                1600,
3232                1200,
3233                1600,
3234                1200,
3235                2160,
3236                1250,
3237                49,
3238                0,
3239                0,
3240                0,
3241                BFMT_VERT_60Hz,
3242                60.00 * BFMT_FREQ_FACTOR,
3243                BFMT_PXL_162MHz,
3244                false,
3245                BFMT_AspectRatio_e16_9,
3246                BFMT_Orientation_e2D,
3247                162.00 * BFMT_FREQ_FACTOR,
3248                "BFMT_VideoFmt_eDVI_1600x1200p_60Hz",
3249                NULL
3250        },
3251
3252        {
3253                BFMT_VideoFmt_eDVI_1920x1080p_60Hz_Red,
3254                1920,
3255                1080,
3256                1920,
3257                1080,
3258                2080,
3259                1111,
3260                29,
3261                0,
3262                0,
3263                0,
3264                BFMT_VERT_60Hz,
3265                60.00 * BFMT_FREQ_FACTOR,
3266                BFMT_PXL_138_625MHz,
3267                false,
3268                BFMT_AspectRatio_e16_9,
3269                BFMT_Orientation_e2D,
3270                138.63 * BFMT_FREQ_FACTOR,
3271                "BFMT_VideoFmt_eDVI_1920x1080p_60Hz_Red",
3272                NULL
3273        },
3274
3275        {
3276                BFMT_VideoFmt_eDVI_848x480p_60Hz,
3277                848,
3278                480,
3279                848,
3280                480,
3281                1056,
3282                500,
3283                20,
3284                0,
3285                0,
3286                0,
3287                BFMT_VERT_60Hz,
3288                59.61 * BFMT_FREQ_FACTOR,
3289                BFMT_PXL_31_50MHz,
3290                false,
3291                BFMT_AspectRatio_e16_9,
3292                BFMT_Orientation_e2D,
3293                31.48 * BFMT_FREQ_FACTOR,
3294                "BFMT_VideoFmt_eDVI_848x480p_60Hz",
3295                NULL
3296        },
3297
3298        {
3299                BFMT_VideoFmt_eDVI_1064x600p_60Hz,
3300                1064,
3301                600,
3302                1064,
3303                600,
3304                1352,
3305                624,
3306                24,
3307                0,
3308                0,
3309                0,
3310                BFMT_VERT_60Hz,
3311                59.81 * BFMT_FREQ_FACTOR,
3312                BFMT_PXL_36_00MHz,
3313                false,
3314                BFMT_AspectRatio_e16_9,
3315                BFMT_Orientation_e2D,
3316                37.32 * BFMT_FREQ_FACTOR,
3317                "BFMT_VideoFmt_eDVI_1064x600p_60Hz",
3318                NULL
3319        },
3320
3321        {
3322                BFMT_VideoFmt_eDVI_1440x900p_60Hz,
3323                1440,
3324                900,
3325                1440,
3326                900,
3327                1904,
3328                932,
3329                32,
3330                0,
3331                0,
3332                0,
3333                BFMT_VERT_60Hz,
3334                60 * BFMT_FREQ_FACTOR,
3335                BFMT_PXL_106_5MHz | BFMT_PXL_106_5MHz_DIV_1_001,
3336                false,
3337                BFMT_AspectRatio_e16_9,
3338                BFMT_Orientation_e2D,
3339                106.5 * BFMT_FREQ_FACTOR,
3340                "BFMT_VideoFmt_eDVI_1440x900p_60Hz",
3341                NULL
3342        },
3343
3344        /* custom formats placeholders*/
3345        BFMT_P_MAKE_BLANK(BFMT_VideoFmt_eCustom0),
3346        BFMT_P_MAKE_BLANK(BFMT_VideoFmt_eCustom1),
3347        BFMT_P_MAKE_BLANK(BFMT_VideoFmt_eCustom2),
3348
3349        /* Must be last */
3350        BFMT_P_MAKE_BLANK(BFMT_VideoFmt_eMaxCount)
3351};
3352
3353/* For table size sanity check */
3354#define BVDC_P_FMT_INFO_COUNT \
3355        (sizeof(s_aVideoFmtInfoTbls) / sizeof(BFMT_VideoInfo))
3356
3357/***************************************************************************
3358 *
3359 */
3360BERR_Code BFMT_GetVideoFormatInfo
3361        ( BFMT_VideoFmt                      eVideoFmt,
3362          BFMT_VideoInfo                    *pVideoFmtInfo )
3363{
3364        BDBG_ENTER(BFMT_GetVideoFormatInfo);
3365
3366        if(pVideoFmtInfo)
3367        {
3368                const BFMT_VideoInfo* info = BFMT_GetVideoFormatInfoPtr(eVideoFmt);
3369                if (info == 0x0)
3370                        return BERR_TRACE (BERR_INVALID_PARAMETER);
3371                *pVideoFmtInfo = *((const BFMT_VideoInfo*)
3372                        BFMT_GetVideoFormatInfoPtr(eVideoFmt));
3373        }
3374
3375        BDBG_LEAVE(BFMT_GetVideoFormatInfo);
3376        return BERR_SUCCESS;
3377}
3378
3379
3380/***************************************************************************
3381 *
3382 */
3383const BFMT_VideoInfo* BFMT_GetVideoFormatInfoPtr
3384        ( BFMT_VideoFmt                      eVideoFmt )
3385{
3386        const BFMT_VideoInfo *pVideoInfo = NULL;
3387        BDBG_ENTER(BFMT_GetVideoFormatInfoPtr);
3388
3389        /* Table size sanity check!  Just in case someone added new format in fmt,
3390         * but forgot to add the new into these table. */
3391#if (BDBG_DEBUG_BUILD)
3392        if(BVDC_P_FMT_INFO_COUNT != BFMT_VideoFmt_eMaxCount+1)
3393        {
3394                BDBG_ERR(("Format Look Up Table out of sync!"));
3395                BDBG_ASSERT(false);
3396        }
3397#endif
3398        BDBG_ASSERT(eVideoFmt < BFMT_VideoFmt_eMaxCount);
3399
3400        if(BFMT_VideoFmt_eCustom0 == eVideoFmt)
3401        {
3402                pVideoInfo = &s_stFormatInfoCustom0;
3403        }
3404        else if(BFMT_VideoFmt_eCustom1 == eVideoFmt)
3405        {
3406                pVideoInfo = &s_stFormatInfoCustom1;
3407        }
3408        else if(BFMT_VideoFmt_eCustom2 == eVideoFmt)
3409        {
3410                BDBG_MSG(("User defined, bfmt does not have information!"));
3411                pVideoInfo = 0x0;
3412        }
3413        else
3414        {
3415                pVideoInfo = &s_aVideoFmtInfoTbls[eVideoFmt];
3416        }
3417
3418        BDBG_LEAVE(BFMT_GetVideoFormatInfoPtr);
3419        return pVideoInfo;
3420}
3421
3422/* End of File */
Note: See TracBrowser for help on using the repository browser.