~gma500/+junk/emgd152-natty

« back to all changes in this revision

Viewing changes to emgd-dkms-1.5.15.3082/emgd/display/pi/cmn/mode_table.c

  • Committer: Luca Forina
  • Date: 2011-02-06 15:11:54 UTC
  • Revision ID: luca.forina@gmail.com-20110206151154-9dzn5ugxjub9qenb
Upload Emgd 1.5.2 for Natty (override Maverick)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* -*- pse-c -*-
 
2
 *-----------------------------------------------------------------------------
 
3
 * Filename: mode_table.c
 
4
 * $Revision: 1.4 $
 
5
 *-----------------------------------------------------------------------------
 
6
 * Copyright © 2002-2010, Intel Corporation.
 
7
 *
 
8
 * This program is free software; you can redistribute it and/or modify it
 
9
 * under the terms and conditions of the GNU General Public License,
 
10
 * version 2, as published by the Free Software Foundation.
 
11
 *
 
12
 * This program is distributed in the hope it will be useful, but WITHOUT
 
13
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 
14
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 
15
 * more details.
 
16
 *
 
17
 * You should have received a copy of the GNU General Public License along with
 
18
 * this program; if not, write to the Free Software Foundation, Inc.,
 
19
 * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
 
20
 *
 
21
 *-----------------------------------------------------------------------------
 
22
 * Description:
 
23
 *  This file contains the mode resolution parameters.
 
24
 *-----------------------------------------------------------------------------
 
25
 */
 
26
 
 
27
#define TRUE 1
 
28
#define FALSE 0
 
29
 
 
30
#include <config.h>
 
31
#include <mode.h>
 
32
 
 
33
/*
 
34
 * If CONFIG_LIMIT_MODES is not defined then ALL modes should be included.
 
35
 * Keep the defines here so that when adding new modes it is apparent that
 
36
 * you should add it to the list below.
 
37
 */
 
38
#ifndef CONFIG_LIMIT_MODES
 
39
#define CONFIG_MODE_640x480x60
 
40
#define CONFIG_MODE_640x480x70
 
41
#define CONFIG_MODE_640x480x72
 
42
#define CONFIG_MODE_640x480x75
 
43
#define CONFIG_MODE_640x480x85
 
44
#define CONFIG_MODE_640x480x100
 
45
#define CONFIG_MODE_640x480x120
 
46
#define CONFIG_MODE_720x480x60
 
47
#define CONFIG_MODE_720x576x50
 
48
#define CONFIG_MODE_800x480x60
 
49
#define CONFIG_MODE_800x600x60
 
50
#define CONFIG_MODE_800x600x70
 
51
#define CONFIG_MODE_800x600x72
 
52
#define CONFIG_MODE_800x600x75
 
53
#define CONFIG_MODE_800x600x85
 
54
#define CONFIG_MODE_800x600x100
 
55
#define CONFIG_MODE_800x600x120
 
56
#define CONFIG_MODE_960x540x60
 
57
#define CONFIG_MODE_1024x768x60
 
58
#define CONFIG_MODE_1024x768x70
 
59
#define CONFIG_MODE_1024x768x75
 
60
#define CONFIG_MODE_1024x768x85
 
61
#define CONFIG_MODE_1024x768x100
 
62
#define CONFIG_MODE_1024x768x120
 
63
#define CONFIG_MODE_1152x864x60
 
64
#define CONFIG_MODE_1152x864x70
 
65
#define CONFIG_MODE_1152x864x72
 
66
#define CONFIG_MODE_1152x864x75
 
67
#define CONFIG_MODE_1152x864x85
 
68
#define CONFIG_MODE_1152x864x100
 
69
#define CONFIG_MODE_1280x720x60
 
70
#define CONFIG_MODE_1280x720x75
 
71
#define CONFIG_MODE_1280x720x85
 
72
#define CONFIG_MODE_1280x720x100
 
73
#define CONFIG_MODE_1280x768x60
 
74
#define CONFIG_MODE_1280x768x75
 
75
#define CONFIG_MODE_1280x768x85
 
76
#define CONFIG_MODE_1280x960x60
 
77
#define CONFIG_MODE_1280x960x75
 
78
#define CONFIG_MODE_1280x960x85
 
79
#define CONFIG_MODE_1280x1024x60
 
80
#define CONFIG_MODE_1280x1024x70
 
81
#define CONFIG_MODE_1280x1024x72
 
82
#define CONFIG_MODE_1280x1024x75
 
83
#define CONFIG_MODE_1280x1024x85
 
84
#define CONFIG_MODE_1280x1024x100
 
85
#define CONFIG_MODE_1280x1024x120
 
86
#define CONFIG_MODE_1366x768x60
 
87
#define CONFIG_MODE_1400x1050x60
 
88
#define CONFIG_MODE_1400x1050x75
 
89
#define CONFIG_MODE_1400x1050x85
 
90
#define CONFIG_MODE_1600x900x60
 
91
#define CONFIG_MODE_1600x900x75
 
92
#define CONFIG_MODE_1600x900x85
 
93
#define CONFIG_MODE_1600x900x100
 
94
#define CONFIG_MODE_1600x900x120
 
95
#define CONFIG_MODE_1600x1200x60
 
96
#define CONFIG_MODE_1600x1200x65
 
97
#define CONFIG_MODE_1600x1200x70
 
98
#define CONFIG_MODE_1600x1200x72
 
99
#define CONFIG_MODE_1600x1200x75
 
100
#define CONFIG_MODE_1600x1200x85
 
101
#define CONFIG_MODE_1600x1200x100
 
102
#define CONFIG_MODE_1600x1200x120
 
103
#define CONFIG_MODE_1856x1392x60
 
104
#define CONFIG_MODE_1856x1392x75
 
105
#define CONFIG_MODE_1920x1080x50
 
106
#define CONFIG_MODE_1920x1080x60
 
107
#define CONFIG_MODE_1920x1080x75
 
108
#define CONFIG_MODE_1920x1080x85
 
109
#define CONFIG_MODE_1920x1080x100
 
110
#define CONFIG_MODE_1920x1200x60
 
111
#define CONFIG_MODE_1920x1200x75
 
112
#define CONFIG_MODE_1920x1440x60
 
113
#define CONFIG_MODE_1920x1440x75
 
114
#define CONFIG_MODE_1920x1440x85
 
115
#define CONFIG_MODE_2048x1536x60
 
116
#define CONFIG_MODE_2048x1536x75
 
117
/* CEA timings */
 
118
#define CONFIG_CEA_MODE_640x480px60
 
119
#ifndef CONFIG_MICRO
 
120
/* These are timings that has duplicate except the difference in aspect
 
121
   ratio. Since IEGD does not support diffrent aspect ratio removing
 
122
   these CEA timings for now */
 
123
/*
 
124
#define CONFIG_CEA_MODE_720x480px60
 
125
#define CONFIG_CEA_MODE_720x576px50*/
 
126
#define CONFIG_CEA_MODE_720x480p_ax60
 
127
#define CONFIG_CEA_MODE_720x576p_ax50
 
128
#define CONFIG_CEA_MODE_1280x720p_ax50
 
129
#define CONFIG_CEA_MODE_1280x720p_ax60
 
130
#define CONFIG_CEA_MODE_1920x1080p_ax50
 
131
#define CONFIG_CEA_MODE_1920x1080p_ax60
 
132
#define CONFIG_CEA_MODE_1920x1080i_ax50
 
133
#define CONFIG_CEA_MODE_1920x1080i_ax60
 
134
#endif /* CONFIG_MICRO */
 
135
 
 
136
#endif
 
137
 
 
138
/*---------------------------------------------------------------------------
 
139
 * Timing tables for CRT modes.
 
140
 *---------------------------------------------------------------------------
 
141
 */
 
142
 
 
143
igd_timing_info_t crt_timing_table[] =
 
144
{
 
145
/* TODO: Add VESA standard REDUCED BLANKING (RB) timings to the table */
 
146
#ifdef CONFIG_MODE_640x480x60
 
147
        {
 
148
                640, 480,              /* width, height */
 
149
                60, 25175,             /* refresh, dot clock */
 
150
                799,                   /* htotal */
 
151
                647, 791,              /* hblank_start, hblank_end */
 
152
                655, 751,              /* hsync_start, hsync_end */
 
153
                524,                   /* vtotal */
 
154
                487, 516,              /* vblank_start, vblank_end */
 
155
                489, 491,              /* vsync_start, vsync_end */
 
156
                0x101,                 /* mode number */
 
157
                PD_MODE_SUPPORTED |    /* enable the mode */
 
158
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
159
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
160
                0, 0,                  /* x, y offset */
 
161
                NULL,                  /* mode extension pointer */
 
162
                0,                                 /* device dependant */
 
163
                0                                  /* device dependant */
 
164
        },
 
165
#endif
 
166
#ifdef CONFIG_MODE_640x480x70
 
167
        {
 
168
                640, 480,              /* width, height */
 
169
                70, 28560,             /* refresh, dot clock */
 
170
                815,                   /* htotal */
 
171
                639, 815,              /* hblank_start, hblank_end */
 
172
                663, 727,              /* hsync_start, hsync_end */
 
173
                499,                   /* vtotal */
 
174
                479, 499,              /* vblank_start, vblank_end */
 
175
                480, 483,              /* vsync_start, vsync_end */
 
176
                0x101,                 /* mode number */
 
177
                PD_MODE_SUPPORTED |    /* enable the mode */
 
178
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
179
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
180
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
181
                0, 0,                  /* x, y offset */
 
182
                NULL,                  /* mode extension pointer */
 
183
                0,                                 /* device dependant */
 
184
                0                                  /* device dependant */
 
185
        },
 
186
#endif
 
187
#ifdef CONFIG_MODE_640x480x72
 
188
        {
 
189
                640, 480,              /* width, height */
 
190
                72, 31500,             /* refresh, dot clock */
 
191
                831,                   /* htotal */
 
192
                647, 823,              /* hblank_start, hblank_end */
 
193
                663, 703,              /* hsync_start, hsync_end */
 
194
                519,                   /* vtotal */
 
195
                487, 511,              /* vblank_start, vblank_end */
 
196
                488, 491,              /* vsync_start, vsync_end */
 
197
                0x101,                 /* mode number */
 
198
                PD_MODE_SUPPORTED |    /* enable the mode */
 
199
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
200
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
201
                0, 0,                  /* x, y offset */
 
202
                NULL,                  /* mode extension pointer */
 
203
                0,                                 /* device dependant */
 
204
                0                                  /* device dependant */
 
205
        },
 
206
#endif
 
207
#ifdef CONFIG_MODE_640x480x75
 
208
        {
 
209
                640, 480,              /* width, height */
 
210
                75, 31500,             /* refresh, dot clock */
 
211
                839,                   /* htotal */
 
212
                639, 839,              /* hblank_start, hblank_end */
 
213
                655, 719,              /* hsync_start, hsync_end */
 
214
                499,                   /* vtotal */
 
215
                479, 499,              /* vblank_start, vblank_end */
 
216
                480, 483,              /* vsync_start, vsync_end */
 
217
                0x101,                 /* mode number */
 
218
                PD_MODE_SUPPORTED |    /* enable the mode */
 
219
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
220
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
221
                0, 0,                  /* x, y offset */
 
222
                NULL,                  /* mode extension pointer */
 
223
                0,                                 /* device dependant */
 
224
                0                                  /* device dependant */
 
225
        },
 
226
#endif
 
227
#ifdef CONFIG_MODE_640x480x85
 
228
        {
 
229
                640, 480,              /* width, height */
 
230
                85, 36000,             /* refresh, dot clock */
 
231
                831,                   /* htotal */
 
232
                639, 831,              /* hblank_start, hblank_end */
 
233
                695, 751,              /* hsync_start, hsync_end */
 
234
                508,                   /* vtotal */
 
235
                479, 508,              /* vblank_start, vblank_end */
 
236
                480, 483,              /* vsync_start, vsync_end */
 
237
                0x101,                 /* mode number */
 
238
                PD_MODE_SUPPORTED |    /* enable the mode */
 
239
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
240
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
241
                0, 0,                  /* x, y offset */
 
242
                NULL,                  /* mode extension pointer */
 
243
                0,                                 /* device dependant */
 
244
                0                                  /* device dependant */
 
245
        },
 
246
#endif
 
247
#ifdef CONFIG_MODE_640x480x100
 
248
        {
 
249
                640, 480,              /* width, height */
 
250
                100, 43163,            /* refresh, dot clock */
 
251
                847,                   /* htotal */
 
252
                639, 847,              /* hblank_start, hblank_end */
 
253
                679, 743,              /* hsync_start, hsync_end */
 
254
                508,                   /* vtotal */
 
255
                479, 508,              /* vblank_start, vblank_end */
 
256
                480, 483,              /* vsync_start, vsync_end */
 
257
                0x00,                 /* mode number */
 
258
                PD_MODE_SUPPORTED |    /* enable the mode */
 
259
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
260
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
261
                0, 0,                  /* x, y offset */
 
262
                NULL,                  /* mode extension pointer */
 
263
                0,                                 /* device dependant */
 
264
                0                                  /* device dependant */
 
265
        },
 
266
#endif
 
267
#ifdef CONFIG_MODE_640x480x120
 
268
        {
 
269
                640, 480,              /* width, height */
 
270
                120, 52406,            /* refresh, dot clock */
 
271
                847,                   /* htotal */
 
272
                639, 847,              /* hblank_start, hblank_end */
 
273
                679, 743,              /* hsync_start, hsync_end */
 
274
                514,                   /* vtotal */
 
275
                479, 514,              /* vblank_start, vblank_end */
 
276
                480, 483,              /* vsync_start, vsync_end */
 
277
                0x00,                 /* mode number */
 
278
                PD_MODE_SUPPORTED |    /* enable the mode */
 
279
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
280
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
281
                0, 0,                  /* x, y offset */
 
282
                NULL,                  /* mode extension pointer */
 
283
                0,                                 /* device dependant */
 
284
                0                                  /* device dependant */
 
285
        },
 
286
#endif
 
287
#ifdef CONFIG_MODE_720x400x70
 
288
        /* NOTE: The above define is not auto-enabled. This is the VGA magic mode */
 
289
        {   /* VGA Mode 2+,3+ */
 
290
                720, 400,              /* width, height */
 
291
                70, 28322,             /* refresh, dot clock */
 
292
                899,                   /* htotal */
 
293
                719, 899,              /* hblank_start, hblank_end */
 
294
                773, 881,              /* hsync_start, hsync_end */
 
295
                448,                   /* vtotal */
 
296
                399, 448,              /* vblank_start, vblank_end */
 
297
                412, 414,              /* vsync_start, vsync_end */
 
298
                0x00,                 /* mode number */
 
299
                PD_MODE_SUPPORTED |    /* enable the mode */
 
300
                IGD_VSYNC_HIGH |
 
301
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
302
                0, 0,                  /* x, y offset */
 
303
                NULL,                  /* mode extension pointer */
 
304
                0,                                 /* device dependant */
 
305
                0                                  /* device dependant */
 
306
        },
 
307
#endif
 
308
#ifdef CONFIG_MODE_720x480x60
 
309
        {
 
310
                720, 480,              /* width, height */
 
311
                60, 27000,             /* refresh, dot clock */
 
312
                857,                   /* htotal */
 
313
                719, 857,              /* hblank_start, hblank_end */
 
314
                735, 797,              /* hsync_start, hsync_end */
 
315
                524,                   /* vtotal */
 
316
                479, 524,              /* vblank_start, vblank_end */
 
317
                488, 494,              /* vsync_start, vsync_end */
 
318
                0x00,                 /* mode number */
 
319
                PD_MODE_SUPPORTED |    /* enable the mode */
 
320
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
321
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
322
                0, 0,                  /* x, y offset */
 
323
                NULL,                  /* mode extension pointer */
 
324
                0,                                 /* device dependant */
 
325
                0                                  /* device dependant */
 
326
        },
 
327
#endif
 
328
#ifdef CONFIG_MODE_720x576x50
 
329
        {
 
330
                720, 576,              /* width, height */
 
331
                50, 27500,             /* refresh, dot clock */
 
332
                864,                   /* htotal */
 
333
                719, 864,              /* hblank_start, hblank_end */
 
334
                732, 795,              /* hsync_start, hsync_end */
 
335
                625,                   /* vtotal */
 
336
                575, 625,              /* vblank_start, vblank_end */
 
337
                581, 587,              /* vsync_start, vsync_end */
 
338
                0x00,                 /* mode number */
 
339
                PD_MODE_SUPPORTED |    /* enable the mode */
 
340
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
341
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
342
                0, 0,                  /* x, y offset */
 
343
                NULL,                  /* mode extension pointer */
 
344
                0,                                 /* device dependant */
 
345
                0                                  /* device dependant */
 
346
        },
 
347
#endif
 
348
        /* OFF BY Default, enable when PLB is merged */
 
349
#ifdef CONFIG_MODE_800x480x60
 
350
        {
 
351
                800, 480,              /* width, height */
 
352
                60, 33231,             /* refresh, dot clock */
 
353
                1055,                  /* htotal */
 
354
                799, 1055,             /* hblank_start, hblank_end */
 
355
                863, 991,              /* hsync_start, hsync_end */
 
356
                524,                   /* vtotal */
 
357
                479, 524,              /* vblank_start, vblank_end */
 
358
                500, 502,              /* vsync_start, vsync_end */
 
359
                0x00,                 /* mode number */
 
360
                PD_MODE_SUPPORTED |    /* enable the mode */
 
361
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
362
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
363
                0, 0,                  /* x, y offset */
 
364
                NULL,                  /* mode extension pointer */
 
365
                0,                                 /* device dependant */
 
366
                0                                  /* device dependant */
 
367
        },
 
368
#endif
 
369
#ifdef CONFIG_MODE_800x600x60
 
370
        {
 
371
                800, 600,              /* width, height */
 
372
                60, 40000,             /* refresh, dot clock */
 
373
                1055,                  /* htotal */
 
374
                799, 1055,             /* hblank_start, hblank_end */
 
375
                839, 967,              /* hsync_start, hsync_end */
 
376
                627,                   /* vtotal */
 
377
                599, 627,              /* vblank_start, vblank_end */
 
378
                600, 604,              /* vsync_start, vsync_end */
 
379
                0x103,                 /* mode number */
 
380
                PD_MODE_SUPPORTED |    /* enable the mode */
 
381
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
382
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
383
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
384
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
385
                0, 0,                  /* x, y offset */
 
386
                NULL,                  /* mode extension pointer */
 
387
                0,                                 /* device dependant */
 
388
                0                                  /* device dependant */
 
389
        },
 
390
#endif
 
391
#ifdef CONFIG_MODE_800x600x70
 
392
        {
 
393
                800, 600,              /* width, height */
 
394
                70, 45500,             /* refresh, dot clock */
 
395
                1039,                  /* htotal */
 
396
                799, 1039,             /* hblank_start, hblank_end */
 
397
                839, 919,              /* hsync_start, hsync_end */
 
398
                624,                   /* vtotal */
 
399
                599, 624,              /* vblank_start, vblank_end */
 
400
                600, 603,              /* vsync_start, vsync_end */
 
401
                0x103,                 /* mode number */
 
402
                PD_MODE_SUPPORTED |    /* enable the mode */
 
403
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
404
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
405
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
406
                0, 0,                  /* x, y offset */
 
407
                NULL,                  /* mode extension pointer */
 
408
                0,                                 /* device dependant */
 
409
                0                                  /* device dependant */
 
410
        },
 
411
#endif
 
412
#ifdef CONFIG_MODE_800x600x72
 
413
        {
 
414
                800, 600,              /* width, height */
 
415
                72, 50000,             /* refresh, dot clock */
 
416
                1039,                  /* htotal */
 
417
                799, 1039,             /* hblank_start, hblank_end */
 
418
                855, 975,              /* hsync_start, hsync_end */
 
419
                665,                   /* vtotal */
 
420
                599, 665,              /* vblank_start, vblank_end */
 
421
                636, 642,              /* vsync_start, vsync_end */
 
422
                0x103,                 /* mode number */
 
423
                PD_MODE_SUPPORTED |    /* enable the mode */
 
424
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
425
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
426
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
427
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
428
                0, 0,                  /* x, y offset */
 
429
                NULL,                  /* mode extension pointer */
 
430
                0,                                 /* device dependant */
 
431
                0                                  /* device dependant */
 
432
        },
 
433
#endif
 
434
#ifdef CONFIG_MODE_800x600x75
 
435
        {
 
436
                800, 600,              /* width, height */
 
437
                75, 49500,             /* refresh, dot clock */
 
438
                1055,                  /* htotal */
 
439
                799, 1055,             /* hblank_start, hblank_end */
 
440
                815, 895,              /* hsync_start, hsync_end */
 
441
                624,                   /* vtotal */
 
442
                599, 624,              /* vblank_start, vblank_end */
 
443
                600, 603,              /* vsync_start, vsync_end */
 
444
                0x103,                 /* mode number */
 
445
                PD_MODE_SUPPORTED |    /* enable the mode */
 
446
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
447
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
448
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
449
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
450
                0, 0,                  /* x, y offset */
 
451
                NULL,                  /* mode extension pointer */
 
452
                0,                                 /* device dependant */
 
453
                0                                  /* device dependant */
 
454
        },
 
455
#endif
 
456
#ifdef CONFIG_MODE_800x600x85
 
457
        {
 
458
                800, 600,              /* width, height */
 
459
                85, 56250,             /* refresh, dot clock */
 
460
                1047,                  /* htotal */
 
461
                799, 1047,             /* hblank_start, hblank_end */
 
462
                831, 895,              /* hsync_start, hsync_end */
 
463
                630,                   /* vtotal */
 
464
                599, 630,              /* vblank_start, vblank_end */
 
465
                600, 603,              /* vsync_start, vsync_end */
 
466
                0x103,                 /* mode number */
 
467
                PD_MODE_SUPPORTED |    /* enable the mode */
 
468
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
469
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
470
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
471
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
472
                0, 0,                  /* x, y offset */
 
473
                NULL,                  /* mode extension pointer */
 
474
                0,                                 /* device dependant */
 
475
                0                                  /* device dependant */
 
476
        },
 
477
#endif
 
478
#ifdef CONFIG_MODE_800x600x100
 
479
        {
 
480
                800, 600,              /* width, height */
 
481
                100, 68179,            /* refresh, dot clock */
 
482
                1071,                  /* htotal */
 
483
                799, 1071,             /* hblank_start, hblank_end */
 
484
                847, 935,              /* hsync_start, hsync_end */
 
485
                635,                   /* vtotal */
 
486
                599, 635,              /* vblank_start, vblank_end */
 
487
                600, 603,              /* vsync_start, vsync_end */
 
488
                0x00,                 /* mode number */
 
489
                PD_MODE_SUPPORTED |    /* enable the mode */
 
490
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
491
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
492
                0, 0,                  /* x, y offset */
 
493
                NULL,                  /* mode extension pointer */
 
494
                0,                                 /* device dependant */
 
495
                0                                  /* device dependant */
 
496
        },
 
497
#endif
 
498
#ifdef CONFIG_MODE_800x600x120
 
499
        {
 
500
                800, 600,              /* width, height */
 
501
                120, 83950,            /* refresh, dot clock */
 
502
                1087,                  /* htotal */
 
503
                799, 1087,             /* hblank_start, hblank_end */
 
504
                855, 943,              /* hsync_start, hsync_end */
 
505
                642,                   /* vtotal */
 
506
                599, 642,              /* vblank_start, vblank_end */
 
507
                600, 603,              /* vsync_start, vsync_end */
 
508
                0x00,                 /* mode number */
 
509
                PD_MODE_SUPPORTED |    /* enable the mode */
 
510
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
511
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
512
                0, 0,                  /* x, y offset */
 
513
                NULL,                  /* mode extension pointer */
 
514
                0,                                 /* device dependant */
 
515
                0                                  /* device dependant */
 
516
        },
 
517
#endif
 
518
#ifdef CONFIG_MODE_960x540x60
 
519
        {
 
520
                960, 540,              /* width, height */
 
521
                60, 40785,             /* refresh, dot clock */
 
522
                1215,                  /* htotal */
 
523
                959, 1215,             /* hblank_start, hblank_end */
 
524
                991, 1087,             /* hsync_start, hsync_end */
 
525
                558,                   /* vtotal */
 
526
                539, 558,              /* vblank_start, vblank_end */
 
527
                540, 543,              /* vsync_start, vsync_end */
 
528
                0x00,                 /* mode number */
 
529
                PD_MODE_SUPPORTED |    /* enable the mode */
 
530
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
531
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
532
                0, 0,                  /* x, y offset */
 
533
                NULL,                  /* mode extension pointer */
 
534
                0,                                 /* device dependant */
 
535
                0                                  /* device dependant */
 
536
        },
 
537
#endif
 
538
#ifdef CONFIG_MODE_1024x768x60
 
539
        {
 
540
                1024, 768,             /* width, height */
 
541
                60, 65000,             /* refresh, dot clock */
 
542
                1343,                  /* htotal */
 
543
                1023, 1343,            /* hblank_start, hblank_end */
 
544
                1047, 1183,            /* hsync_start, hsync_end */
 
545
                805,                   /* vtotal */
 
546
                767, 805,              /* vblank_start, vblank_end */
 
547
                770, 776,              /* vsync_start, vsync_end */
 
548
                0x105,                 /* mode number */
 
549
                PD_MODE_SUPPORTED |    /* enable the mode */
 
550
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
551
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
552
                0, 0,                  /* x, y offset */
 
553
                NULL,                  /* mode extension pointer */
 
554
                0,                                 /* device dependant */
 
555
                0                                  /* device dependant */
 
556
        },
 
557
#endif
 
558
#ifdef CONFIG_MODE_1024x768x70
 
559
        {
 
560
                1024, 768,             /* width, height */
 
561
                70, 75000,             /* refresh, dot clock */
 
562
                1327,                  /* htotal */
 
563
                1023, 1327,            /* hblank_start, hblank_end */
 
564
                1047, 1183,            /* hsync_start, hsync_end */
 
565
                805,                   /* vtotal */
 
566
                767, 805,              /* vblank_start, vblank_end */
 
567
                770, 776,              /* vsync_start, vsync_end */
 
568
                0x105,                 /* mode number */
 
569
                PD_MODE_SUPPORTED |    /* enable the mode */
 
570
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
571
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
572
                0, 0,                  /* x, y offset */
 
573
                NULL,                  /* mode extension pointer */
 
574
                0,                                 /* device dependant */
 
575
                0                                  /* device dependant */
 
576
        },
 
577
#endif
 
578
#ifdef CONFIG_MODE_1024x768x75
 
579
        {
 
580
                1024, 768,             /* width, height */
 
581
                75, 78750,             /* refresh, dot clock */
 
582
                1311,                  /* htotal */
 
583
                1023, 1311,            /* hblank_start, hblank_end */
 
584
                1039, 1135,            /* hsync_start, hsync_end */
 
585
                799,                   /* vtotal */
 
586
                767, 799,              /* vblank_start, vblank_end */
 
587
                768, 771,              /* vsync_start, vsync_end */
 
588
                0x105,                 /* mode number */
 
589
                PD_MODE_SUPPORTED |    /* enable the mode */
 
590
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
591
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
592
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
593
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
594
                0, 0,                  /* x, y offset */
 
595
                NULL,                  /* mode extension pointer */
 
596
                0,                                 /* device dependant */
 
597
                0                                  /* device dependant */
 
598
        },
 
599
#endif
 
600
#ifdef CONFIG_MODE_1024x768x85
 
601
        {
 
602
                1024, 768,             /* width, height */
 
603
                85, 94500,             /* refresh, dot clock */
 
604
                1375,                  /* htotal */
 
605
                1023, 1375,            /* hblank_start, hblank_end */
 
606
                1071, 1167,            /* hsync_start, hsync_end */
 
607
                807,                   /* vtotal */
 
608
                767, 807,              /* vblank_start, vblank_end */
 
609
                768, 771,              /* vsync_start, vsync_end */
 
610
                0x105,                 /* mode number */
 
611
                PD_MODE_SUPPORTED |    /* enable the mode */
 
612
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
613
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
614
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
615
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
616
                0, 0,                  /* x, y offset */
 
617
                NULL,                  /* mode extension pointer */
 
618
                0,                                 /* device dependant */
 
619
                0                                  /* device dependant */
 
620
        },
 
621
#endif
 
622
#ifdef CONFIG_MODE_1024x768x100
 
623
        {
 
624
                1024, 768,             /* width, height */
 
625
                100, 113310,           /* refresh, dot clock */
 
626
                1391,                  /* htotal */
 
627
                1023, 1391,            /* hblank_start, hblank_end */
 
628
                1095, 1207,            /* hsync_start, hsync_end */
 
629
                813,                   /* vtotal */
 
630
                767, 813,              /* vblank_start, vblank_end */
 
631
                768, 771,              /* vsync_start, vsync_end */
 
632
                0x00,                 /* mode number */
 
633
                PD_MODE_SUPPORTED |    /* enable the mode */
 
634
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
635
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
636
                0, 0,                  /* x, y offset */
 
637
                NULL,                  /* mode extension pointer */
 
638
                0,                                 /* device dependant */
 
639
                0                                  /* device dependant */
 
640
        },
 
641
#endif
 
642
#ifdef CONFIG_MODE_1024x768x120
 
643
        {
 
644
                1024, 768,             /* width, height */
 
645
                120, 139050,           /* refresh, dot clock */
 
646
                1407,                  /* htotal */
 
647
                1023, 1407,            /* hblank_start, hblank_end */
 
648
                1103, 1215,            /* hsync_start, hsync_end */
 
649
                822,                   /* vtotal */
 
650
                767, 822,              /* vblank_start, vblank_end */
 
651
                768, 771,              /* vsync_start, vsync_end */
 
652
                0x00,                 /* mode number */
 
653
                PD_MODE_SUPPORTED |    /* enable the mode */
 
654
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
655
                IGD_VSYNC_HIGH,        /* polarity H+ */
 
656
                0, 0,                  /* x, y offset */
 
657
                NULL,                  /* mode extension pointer */
 
658
                0,                                 /* device dependant */
 
659
                0                                  /* device dependant */
 
660
        },
 
661
#endif
 
662
#ifdef CONFIG_MODE_1152x864x60
 
663
        {
 
664
                1152, 864,             /* width, height */
 
665
                60, 81624,             /* refresh, dot clock */
 
666
                1519,                  /* htotal */
 
667
                1151, 1519,            /* hblank_start, hblank_end */
 
668
                1215, 1335,            /* hsync_start, hsync_end */
 
669
                894,                   /* vtotal */
 
670
                863, 894,              /* vblank_start, vblank_end */
 
671
                864, 867,              /* vsync_start, vsync_end */
 
672
                0x00,                 /* mode number */
 
673
                PD_MODE_SUPPORTED |    /* enable the mode */
 
674
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
675
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
676
                0, 0,                  /* x, y offset */
 
677
                NULL,                  /* mode extension pointer */
 
678
                0,                                 /* device dependant */
 
679
                0                                  /* device dependant */
 
680
        },
 
681
#endif
 
682
#ifdef CONFIG_MODE_1152x864x70
 
683
        {
 
684
                1152, 864,             /* width, height */
 
685
                70, 97000,             /* refresh, dot clock */
 
686
                1535,                  /* htotal */
 
687
                1151, 1535,            /* hblank_start, hblank_end */
 
688
                1223, 1343,            /* hsync_start, hsync_end */
 
689
                899,                   /* vtotal */
 
690
                863, 899,              /* vblank_start, vblank_end */
 
691
                864, 867,              /* vsync_start, vsync_end */
 
692
                0x00,                 /* mode number */
 
693
                PD_MODE_SUPPORTED |    /* enable the mode */
 
694
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
695
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
696
                0, 0,                  /* x, y offset */
 
697
                NULL,                  /* mode extension pointer */
 
698
                0,                                 /* device dependant */
 
699
                0                                  /* device dependant */
 
700
        },
 
701
#endif
 
702
#ifdef CONFIG_MODE_1152x864x72
 
703
        {
 
704
                1152, 864,             /* width, height */
 
705
                72, 100000,            /* refresh, dot clock */
 
706
                1535,                  /* htotal */
 
707
                1151, 1535,            /* hblank_start, hblank_end */
 
708
                1223, 1343,            /* hsync_start, hsync_end */
 
709
                900,                   /* vtotal */
 
710
                863, 900,              /* vblank_start, vblank_end */
 
711
                864, 867,              /* vsync_start, vsync_end */
 
712
                0x00,                 /* mode number */
 
713
                PD_MODE_SUPPORTED |    /* enable the mode */
 
714
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
715
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
716
                0, 0,                  /* x, y offset */
 
717
                NULL,                  /* mode extension pointer */
 
718
                0,                                 /* device dependant */
 
719
                0                                  /* device dependant */
 
720
        },
 
721
#endif
 
722
#ifdef CONFIG_MODE_1152x864x75
 
723
        {
 
724
                1152, 864,             /* width, height */
 
725
                75, 108000,            /* refresh, dot clock */
 
726
                1599,                  /* htotal */
 
727
                1151, 1599,            /* hblank_start, hblank_end */
 
728
                1215, 1343,            /* hsync_start, hsync_end */
 
729
                899,                   /* vtotal */
 
730
                863, 899,              /* vblank_start, vblank_end */
 
731
                864, 867,              /* vsync_start, vsync_end */
 
732
                0x00,                 /* mode number */
 
733
                PD_MODE_SUPPORTED |    /* enable the mode */
 
734
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
735
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
736
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
737
                0, 0,                  /* x, y offset */
 
738
                NULL,                  /* mode extension pointer */
 
739
                0,                                 /* device dependant */
 
740
                0                                  /* device dependant */
 
741
        },
 
742
#endif
 
743
#ifdef CONFIG_MODE_1152x864x85
 
744
        {
 
745
                1152, 864,             /* width, height */
 
746
                85, 120000,            /* refresh, dot clock */
 
747
                1551,                  /* htotal */
 
748
                1151, 1551,            /* hblank_start, hblank_end */
 
749
                1223, 1351,            /* hsync_start, hsync_end */
 
750
                906,                   /* vtotal */
 
751
                863, 906,              /* vblank_start, vblank_end */
 
752
                864, 867,              /* vsync_start, vsync_end */
 
753
                0x00,                 /* mode number */
 
754
                PD_MODE_SUPPORTED |    /* enable the mode */
 
755
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
756
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
757
                0, 0,                  /* x, y offset */
 
758
                NULL,                  /* mode extension pointer */
 
759
                0,                                 /* device dependant */
 
760
                0                                  /* device dependant */
 
761
        },
 
762
#endif
 
763
#ifdef CONFIG_MODE_1152x864x100
 
764
        {
 
765
                1152, 864,             /* width, height */
 
766
                100, 144000,           /* refresh, dot clock */
 
767
                1567,                  /* htotal */
 
768
                1151, 1567,            /* hblank_start, hblank_end */
 
769
                1231, 1359,            /* hsync_start, hsync_end */
 
770
                914,                   /* vtotal */
 
771
                863, 914,              /* vblank_start, vblank_end */
 
772
                864, 867,              /* vsync_start, vsync_end */
 
773
                0x00,                 /* mode number */
 
774
                PD_MODE_SUPPORTED |    /* enable the mode */
 
775
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
776
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
777
                0, 0,                  /* x, y offset */
 
778
                NULL,                  /* mode extension pointer */
 
779
                0,                                 /* device dependant */
 
780
                0                                  /* device dependant */
 
781
        },
 
782
#endif
 
783
#ifdef CONFIG_MODE_1280x720x60
 
784
        {
 
785
                1280, 720,             /* width, height */
 
786
                60, 74481,             /* refresh, dot clock */
 
787
                1663,                  /* htotal */
 
788
                1279, 1663,            /* hblank_start, hblank_end */
 
789
                1335, 1471,            /* hsync_start, hsync_end */
 
790
                745,                   /* vtotal */
 
791
                719, 745,              /* vblank_start, vblank_end */
 
792
                720, 723,              /* vsync_start, vsync_end */
 
793
                0x00,                 /* mode number */
 
794
                PD_MODE_SUPPORTED |    /* enable the mode */
 
795
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
796
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
797
                0, 0,                  /* x, y offset */
 
798
                NULL,                  /* mode extension pointer */
 
799
                0,                                 /* device dependant */
 
800
                0                                  /* device dependant */
 
801
        },
 
802
#endif
 
803
#ifdef CONFIG_MODE_1280x720x75
 
804
        {
 
805
                1280, 720,             /* width, height */
 
806
                75, 96000,             /* refresh, dot clock */
 
807
                1695,                  /* htotal */
 
808
                1279, 1695,            /* hblank_start, hblank_end */
 
809
                1351, 1487,            /* hsync_start, hsync_end */
 
810
                751,                   /* vtotal */
 
811
                719, 751,              /* vblank_start, vblank_end */
 
812
                720, 723,              /* vsync_start, vsync_end */
 
813
                0x00,                 /* mode number */
 
814
                PD_MODE_SUPPORTED |    /* enable the mode */
 
815
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
816
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
817
                0, 0,                  /* x, y offset */
 
818
                NULL,                  /* mode extension pointer */
 
819
                0,                                 /* device dependant */
 
820
                0                                  /* device dependant */
 
821
        },
 
822
#endif
 
823
#ifdef CONFIG_MODE_1280x720x85
 
824
        {
 
825
                1280, 720,             /* width, height */
 
826
                85, 110000,            /* refresh, dot clock */
 
827
                1711,                  /* htotal */
 
828
                1279, 1711,            /* hblank_start, hblank_end */
 
829
                1359, 1495,            /* hsync_start, hsync_end */
 
830
                755,                   /* vtotal */
 
831
                719, 755,              /* vblank_start, vblank_end */
 
832
                720, 723,              /* vsync_start, vsync_end */
 
833
                0x00,                 /* mode number */
 
834
                PD_MODE_SUPPORTED |    /* enable the mode */
 
835
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
836
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
837
                0, 0,                  /* x, y offset */
 
838
                NULL,                  /* mode extension pointer */
 
839
                0,                                 /* device dependant */
 
840
                0                                  /* device dependant */
 
841
        },
 
842
#endif
 
843
#ifdef CONFIG_MODE_1280x720x100
 
844
        {
 
845
                1280, 720,             /* width, height */
 
846
                100, 131850,           /* refresh, dot clock */
 
847
                1727,                  /* htotal */
 
848
                1279, 1727,            /* hblank_start, hblank_end */
 
849
                1367, 1503,            /* hsync_start, hsync_end */
 
850
                762,                   /* vtotal */
 
851
                719, 762,              /* vblank_start, vblank_end */
 
852
                720, 723,              /* vsync_start, vsync_end */
 
853
                0x00,                 /* mode number */
 
854
                PD_MODE_SUPPORTED |    /* enable the mode */
 
855
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
856
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
857
                0, 0,                  /* x, y offset */
 
858
                NULL,                  /* mode extension pointer */
 
859
                0,                                 /* device dependant */
 
860
                0                                  /* device dependant */
 
861
        },
 
862
#endif
 
863
#ifdef CONFIG_MODE_1280x768x60
 
864
        {
 
865
                1280, 768,             /* width, height */
 
866
                60, 80136,             /* refresh, dot clock */
 
867
                1679,                  /* htotal */
 
868
                1279, 1679,            /* hblank_start, hblank_end */
 
869
                1343, 1479,            /* hsync_start, hsync_end */
 
870
                794,                   /* vtotal */
 
871
                767, 794,              /* vblank_start, vblank_end */
 
872
                768, 771,              /* vsync_start, vsync_end */
 
873
                0x00,                 /* mode number */
 
874
                PD_MODE_SUPPORTED |    /* enable the mode */
 
875
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
876
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
877
                0, 0,                  /* x, y offset */
 
878
                NULL,                  /* mode extension pointer */
 
879
                0,                                 /* device dependant */
 
880
                0                                  /* device dependant */
 
881
        },
 
882
#endif
 
883
#ifdef CONFIG_MODE_1280x768x75
 
884
        {
 
885
                1280, 768,             /* width, height */
 
886
                75, 102977,            /* refresh, dot clock */
 
887
                1711,                  /* htotal */
 
888
                1279, 1711,            /* hblank_start, hblank_end */
 
889
                1359, 1495,            /* hsync_start, hsync_end */
 
890
                801,                   /* vtotal */
 
891
                767, 801,              /* vblank_start, vblank_end */
 
892
                768, 771,              /* vsync_start, vsync_end */
 
893
                0x00,                 /* mode number */
 
894
                PD_MODE_SUPPORTED |    /* enable the mode */
 
895
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
896
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
897
                0, 0,                  /* x, y offset */
 
898
                NULL,                  /* mode extension pointer */
 
899
                0,                                 /* device dependant */
 
900
                0                                  /* device dependant */
 
901
        },
 
902
#endif
 
903
#ifdef CONFIG_MODE_1280x768x85
 
904
        {
 
905
                1280, 768,             /* width, height */
 
906
                85, 118532,            /* refresh, dot clock */
 
907
                1727,                  /* htotal */
 
908
                1279, 1727,            /* hblank_start, hblank_end */
 
909
                1367, 1503,            /* hsync_start, hsync_end */
 
910
                806,                   /* vtotal */
 
911
                767, 806,              /* vblank_start, vblank_end */
 
912
                768, 771,              /* vsync_start, vsync_end */
 
913
                0x00,                 /* mode number */
 
914
                PD_MODE_SUPPORTED |    /* enable the mode */
 
915
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
916
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
917
                0, 0,                  /* x, y offset */
 
918
                NULL,                  /* mode extension pointer */
 
919
                0,                                 /* device dependant */
 
920
                0                                  /* device dependant */
 
921
        },
 
922
#endif
 
923
#ifdef CONFIG_MODE_1280x960x60
 
924
        {
 
925
                1280, 960,             /* width, height */
 
926
                60, 108000,            /* refresh, dot clock */
 
927
                1799,                  /* htotal */
 
928
                1279, 1799,            /* hblank_start, hblank_end */
 
929
                1375, 1487,            /* hsync_start, hsync_end */
 
930
                999,                   /* vtotal */
 
931
                959, 999,              /* vblank_start, vblank_end */
 
932
                960, 963,              /* vsync_start, vsync_end */
 
933
                0x00,                 /* mode number */
 
934
                PD_MODE_SUPPORTED |    /* enable the mode */
 
935
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
936
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
937
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
938
                0, 0,                  /* x, y offset */
 
939
                NULL,                  /* mode extension pointer */
 
940
                0,                                 /* device dependant */
 
941
                0                                  /* device dependant */
 
942
        },
 
943
#endif
 
944
#ifdef CONFIG_MODE_1280x960x75
 
945
        {
 
946
                1280, 960,             /* width, height */
 
947
                75, 129859,            /* refresh, dot clock */
 
948
                1727,                  /* htotal */
 
949
                1279, 1727,            /* hblank_start, hblank_end */
 
950
                1367, 1503,            /* hsync_start, hsync_end */
 
951
                1001,                  /* vtotal */
 
952
                959, 1001,             /* vblank_start, vblank_end */
 
953
                960, 963,              /* vsync_start, vsync_end */
 
954
                0x00,                 /* mode number */
 
955
                PD_MODE_SUPPORTED |    /* enable the mode */
 
956
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
957
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
958
                0, 0,                  /* x, y offset */
 
959
                NULL,                  /* mode extension pointer */
 
960
                0,                                 /* device dependant */
 
961
                0                                  /* device dependant */
 
962
        },
 
963
#endif
 
964
#ifdef CONFIG_MODE_1280x960x85
 
965
        {
 
966
                1280, 960,             /* width, height */
 
967
                85, 148500,            /* refresh, dot clock */
 
968
                1727,                  /* htotal */
 
969
                1279, 1727,            /* hblank_start, hblank_end */
 
970
                1343, 1503,            /* hsync_start, hsync_end */
 
971
                1010,                  /* vtotal */
 
972
                959, 1010,             /* vblank_start, vblank_end */
 
973
                960, 963,              /* vsync_start, vsync_end */
 
974
                0x00,                 /* mode number */
 
975
                PD_MODE_SUPPORTED |    /* enable the mode */
 
976
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
977
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
978
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
979
                0, 0,                  /* x, y offset */
 
980
                NULL,                  /* mode extension pointer */
 
981
                0,                                 /* device dependant */
 
982
                0                                  /* device dependant */
 
983
        },
 
984
#endif
 
985
#ifdef CONFIG_MODE_1280x1024x60
 
986
        {
 
987
                1280, 1024,            /* width, height */
 
988
                60, 108000,            /* refresh, dot clock */
 
989
                1687,                  /* htotal */
 
990
                1279, 1687,            /* hblank_start, hblank_end */
 
991
                1327, 1439,            /* hsync_start, hsync_end */
 
992
                1065,                  /* vtotal */
 
993
                1023, 1065,            /* vblank_start, vblank_end */
 
994
                1024, 1027,            /* vsync_start, vsync_end */
 
995
                0x107,                 /* mode number */
 
996
                PD_MODE_SUPPORTED |    /* enable the mode */
 
997
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
998
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
999
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1000
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1001
                0, 0,                  /* x, y offset */
 
1002
                NULL,                  /* mode extension pointer */
 
1003
                0,                                 /* device dependant */
 
1004
                0                                  /* device dependant */
 
1005
        },
 
1006
#endif
 
1007
#ifdef CONFIG_MODE_1280x1024x70
 
1008
        {
 
1009
                1280, 1024,            /* width, height */
 
1010
                70, 129000,            /* refresh, dot clock */
 
1011
                1727,                  /* htotal */
 
1012
                1279, 1727,            /* hblank_start, hblank_end */
 
1013
                1367, 1503,            /* hsync_start, hsync_end */
 
1014
                1065,                  /* vtotal */
 
1015
                1023, 1065,            /* vblank_start, vblank_end */
 
1016
                1024, 1027,            /* vsync_start, vsync_end */
 
1017
                0x107,                 /* mode number */
 
1018
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1019
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1020
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1021
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1022
                0, 0,                  /* x, y offset */
 
1023
                NULL,                  /* mode extension pointer */
 
1024
                0,                                 /* device dependant */
 
1025
                0                                  /* device dependant */
 
1026
        },
 
1027
#endif
 
1028
#ifdef CONFIG_MODE_1280x1024x72
 
1029
        {
 
1030
                1280, 1024,            /* width, height */
 
1031
                72, 133000,            /* refresh, dot clock */
 
1032
                1727,                  /* htotal */
 
1033
                1279, 1727,            /* hblank_start, hblank_end */
 
1034
                1367, 1503,            /* hsync_start, hsync_end */
 
1035
                1066,                  /* vtotal */
 
1036
                1023, 1066,            /* vblank_start, vblank_end */
 
1037
                1024, 1027,            /* vsync_start, vsync_end */
 
1038
                0x107,                 /* mode number */
 
1039
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1040
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1041
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1042
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1043
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1044
                0, 0,                  /* x, y offset */
 
1045
                NULL,                  /* mode extension pointer */
 
1046
                0,                                 /* device dependant */
 
1047
                0                                  /* device dependant */
 
1048
        },
 
1049
#endif
 
1050
#ifdef CONFIG_MODE_1280x1024x75
 
1051
        {
 
1052
                1280, 1024,            /* width, height */
 
1053
                75, 135000,            /* refresh, dot clock */
 
1054
                1687,                  /* htotal */
 
1055
                1279, 1687,            /* hblank_start, hblank_end */
 
1056
                1295, 1439,            /* hsync_start, hsync_end */
 
1057
                1065,                  /* vtotal */
 
1058
                1023, 1065,            /* vblank_start, vblank_end */
 
1059
                1024, 1027,            /* vsync_start, vsync_end */
 
1060
                0x107,                 /* mode number */
 
1061
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1062
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1063
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1064
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1065
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1066
                0, 0,                  /* x, y offset */
 
1067
                NULL,                  /* mode extension pointer */
 
1068
                0,                                 /* device dependant */
 
1069
                0                                  /* device dependant */
 
1070
        },
 
1071
#endif
 
1072
#ifdef CONFIG_MODE_1280x1024x85
 
1073
        {
 
1074
                1280, 1024,            /* width, height */
 
1075
                85, 157500,            /* refresh, dot clock */
 
1076
                1727,                  /* htotal */
 
1077
                1279, 1727,            /* hblank_start, hblank_end */
 
1078
                1343, 1503,            /* hsync_start, hsync_end */
 
1079
                1071,                  /* vtotal */
 
1080
                1023, 1071,            /* vblank_start, vblank_end */
 
1081
                1024, 1027,            /* vsync_start, vsync_end */
 
1082
                0x107,                 /* mode number */
 
1083
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1084
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1085
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1086
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1087
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1088
                0, 0,                  /* x, y offset */
 
1089
                NULL,                  /* mode extension pointer */
 
1090
                0,                                 /* device dependant */
 
1091
                0                                  /* device dependant */
 
1092
        },
 
1093
#endif
 
1094
#ifdef CONFIG_MODE_1280x1024x100
 
1095
        {
 
1096
                1280, 1024,            /* width, height */
 
1097
                100, 190960,           /* refresh, dot clock */
 
1098
                1759,                  /* htotal */
 
1099
                1279, 1759,            /* hblank_start, hblank_end */
 
1100
                1375, 1519,            /* hsync_start, hsync_end */
 
1101
                1084,                  /* vtotal */
 
1102
                1023, 1084,            /* vblank_start, vblank_end */
 
1103
                1024, 1027,            /* vsync_start, vsync_end */
 
1104
                0x00,                  /* mode number */
 
1105
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1106
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1107
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1108
                0, 0,                  /* x, y offset */
 
1109
                NULL,                  /* mode extension pointer */
 
1110
                0,                                 /* device dependant */
 
1111
                0                                  /* device dependant */
 
1112
        },
 
1113
#endif
 
1114
#ifdef CONFIG_MODE_1280x1024x120
 
1115
        {
 
1116
                1280, 1024,            /* width, height */
 
1117
                120, 233790,           /* refresh, dot clock */
 
1118
                1775,                  /* htotal */
 
1119
                1279, 1775,            /* hblank_start, hblank_end */
 
1120
                1383, 1527,            /* hsync_start, hsync_end */
 
1121
                1096,                  /* vtotal */
 
1122
                1023, 1096,            /* vblank_start, vblank_end */
 
1123
                1024, 1027,            /* vsync_start, vsync_end */
 
1124
                0x00,                  /* mode number */
 
1125
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1126
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1127
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1128
                0, 0,                  /* x, y offset */
 
1129
                NULL,                  /* mode extension pointer */
 
1130
                0,                                 /* device dependant */
 
1131
                0                                  /* device dependant */
 
1132
        },
 
1133
#endif
 
1134
#ifdef CONFIG_MODE_1366x768x60
 
1135
        {
 
1136
                1366, 768,             /* width, height */
 
1137
                60, 74057,             /* refresh, dot clock */
 
1138
                1663,                  /* htotal */
 
1139
                1365, 1663,            /* hblank_start, hblank_end */
 
1140
                1429, 1557,            /* hsync_start, hsync_end */
 
1141
                775,                   /* vtotal */
 
1142
                767, 775,              /* vblank_start, vblank_end */
 
1143
                768, 769,              /* vsync_start, vsync_end */
 
1144
                0x00,                  /* mode number */
 
1145
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1146
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1147
                IGD_VSYNC_HIGH |       /* polarity V+ */
 
1148
                IGD_HSYNC_HIGH,        /* polarity H+ */
 
1149
                0, 0,                  /* x, y offset */
 
1150
                NULL,                  /* mode extension pointer */
 
1151
                0,                                 /* device dependant */
 
1152
                0                                  /* device dependant */
 
1153
        },
 
1154
#endif
 
1155
 
 
1156
#ifdef CONFIG_MODE_1400x1050x60
 
1157
        {
 
1158
                1400, 1050,            /* width, height */
 
1159
                60, 122000,            /* refresh, dot clock */
 
1160
                1879,                  /* htotal */
 
1161
                1399, 1879,            /* hblank_start, hblank_end */
 
1162
                1487, 1639,            /* hsync_start, hsync_end */
 
1163
                1086,                  /* vtotal */
 
1164
                1049, 1086,            /* vblank_start, vblank_end */
 
1165
                1050, 1053,            /* vsync_start, vsync_end */
 
1166
                0x00,                  /* mode number */
 
1167
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1168
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1169
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1170
                0, 0,                  /* x, y offset */
 
1171
                NULL,                  /* mode extension pointer */
 
1172
                0,                                 /* device dependant */
 
1173
                0                                  /* device dependant */
 
1174
        },
 
1175
#endif
 
1176
#ifdef CONFIG_MODE_1400x1050x75
 
1177
        {
 
1178
                1400, 1050,            /* width, height */
 
1179
                75, 155851,            /* refresh, dot clock */
 
1180
                1895,                  /* htotal */
 
1181
                1399, 1895,            /* hblank_start, hblank_end */
 
1182
                1495, 1647,            /* hsync_start, hsync_end */
 
1183
                1095,                  /* vtotal */
 
1184
                1049, 1095,            /* vblank_start, vblank_end */
 
1185
                1050, 1053,            /* vsync_start, vsync_end */
 
1186
                0x00,                  /* mode number */
 
1187
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1188
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1189
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1190
                0, 0,                  /* x, y offset */
 
1191
                NULL,                  /* mode extension pointer */
 
1192
                0,                                 /* device dependant */
 
1193
                0                                  /* device dependant */
 
1194
        },
 
1195
#endif
 
1196
#ifdef CONFIG_MODE_1400x1050x85
 
1197
        {
 
1198
                1400, 1050,            /* width, height */
 
1199
                85, 179260,            /* refresh, dot clock */
 
1200
                1911,                  /* htotal */
 
1201
                1399, 1911,            /* hblank_start, hblank_end */
 
1202
                1503, 1655,            /* hsync_start, hsync_end */
 
1203
                1102,                  /* vtotal */
 
1204
                1049, 1102,            /* vblank_start, vblank_end */
 
1205
                1050, 1053,            /* vsync_start, vsync_end */
 
1206
                0x00,                  /* mode number */
 
1207
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1208
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1209
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1210
                0, 0,                  /* x, y offset */
 
1211
                NULL,                  /* mode extension pointer */
 
1212
                0,                                 /* device dependant */
 
1213
                0                                  /* device dependant */
 
1214
        },
 
1215
#endif
 
1216
#ifdef CONFIG_MODE_1600x900x60
 
1217
        {
 
1218
                1600, 900,             /* width, height */
 
1219
                60, 119000,            /* refresh, dot clock */
 
1220
                2127,                  /* htotal */
 
1221
                1599, 2127,            /* hblank_start, hblank_end */
 
1222
                1695, 1863,            /* hsync_start, hsync_end */
 
1223
                931,                   /* vtotal */
 
1224
                899, 931,              /* vblank_start, vblank_end */
 
1225
                900, 903,              /* vsync_start, vsync_end */
 
1226
                0x00,                  /* mode number */
 
1227
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1228
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1229
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1230
                0, 0,                  /* x, y offset */
 
1231
                NULL,                  /* mode extension pointer */
 
1232
                0,                                 /* device dependant */
 
1233
                0                                  /* device dependant */
 
1234
        },
 
1235
#endif
 
1236
#ifdef CONFIG_MODE_1600x900x75
 
1237
        {
 
1238
                1600, 900,             /* width, height */
 
1239
                75, 152000,            /* refresh, dot clock */
 
1240
                2159,                  /* htotal */
 
1241
                1599, 2159,            /* hblank_start, hblank_end */
 
1242
                1703, 1879,            /* hsync_start, hsync_end */
 
1243
                939,                   /* vtotal */
 
1244
                899, 939,              /* vblank_start, vblank_end */
 
1245
                900, 903,              /* vsync_start, vsync_end */
 
1246
                0x00,                  /* mode number */
 
1247
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1248
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1249
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1250
                0, 0,                  /* x, y offset */
 
1251
                NULL,                  /* mode extension pointer */
 
1252
                0,                                 /* device dependant */
 
1253
                0                                  /* device dependant */
 
1254
        },
 
1255
#endif
 
1256
#ifdef CONFIG_MODE_1600x900x85
 
1257
        {
 
1258
                1600, 900,             /* width, height */
 
1259
                85, 175000,            /* refresh, dot clock */
 
1260
                2175,                  /* htotal */
 
1261
                1599, 2175,            /* hblank_start, hblank_end */
 
1262
                1711, 1887,            /* hsync_start, hsync_end */
 
1263
                944,                   /* vtotal */
 
1264
                899, 944,              /* vblank_start, vblank_end */
 
1265
                900, 903,              /* vsync_start, vsync_end */
 
1266
                0x00,                  /* mode number */
 
1267
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1268
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1269
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1270
                0, 0,                  /* x, y offset */
 
1271
                NULL,                  /* mode extension pointer */
 
1272
                0,                                 /* device dependant */
 
1273
                0                                  /* device dependant */
 
1274
        },
 
1275
#endif
 
1276
#ifdef CONFIG_MODE_1600x900x100
 
1277
        {
 
1278
                1600, 900,             /* width, height */
 
1279
                100, 208900,           /* refresh, dot clock */
 
1280
                2191,                  /* htotal */
 
1281
                1599, 2191,            /* hblank_start, hblank_end */
 
1282
                1719, 1895,            /* hsync_start, hsync_end */
 
1283
                952,                   /* vtotal */
 
1284
                899, 952,              /* vblank_start, vblank_end */
 
1285
                900, 903,              /* vsync_start, vsync_end */
 
1286
                0x00,                  /* mode number */
 
1287
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1288
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1289
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1290
                0, 0,                  /* x, y offset */
 
1291
                NULL,                  /* mode extension pointer */
 
1292
                0,                                 /* device dependant */
 
1293
                0                                  /* device dependant */
 
1294
        },
 
1295
#endif
 
1296
#ifdef CONFIG_MODE_1600x900x120
 
1297
        {
 
1298
                1600, 900,             /* width, height */
 
1299
                120, 255686,           /* refresh, dot clock */
 
1300
                2207,                  /* htotal */
 
1301
                1599, 2207,            /* hblank_start, hblank_end */
 
1302
                1727, 1903,            /* hsync_start, hsync_end */
 
1303
                964,                   /* vtotal */
 
1304
                899, 964,              /* vblank_start, vblank_end */
 
1305
                900, 903,              /* vsync_start, vsync_end */
 
1306
                0x00,                  /* mode number */
 
1307
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1308
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1309
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1310
                0, 0,                  /* x, y offset */
 
1311
                NULL,                  /* mode extension pointer */
 
1312
                0,                                 /* device dependant */
 
1313
                0                                  /* device dependant */
 
1314
        },
 
1315
#endif
 
1316
#ifdef CONFIG_MODE_1600x1200x60
 
1317
        {
 
1318
                1600, 1200,            /* width, height */
 
1319
                60, 162000,            /* refresh, dot clock */
 
1320
                2159,                  /* htotal */
 
1321
                1599, 2159,            /* hblank_start, hblank_end */
 
1322
                1663, 1855,            /* hsync_start, hsync_end */
 
1323
                1249,                  /* vtotal */
 
1324
                1199, 1249,            /* vblank_start, vblank_end */
 
1325
                1200, 1203,            /* vsync_start, vsync_end */
 
1326
                0x00,                  /* mode number */
 
1327
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1328
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1329
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1330
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1331
                0, 0,                  /* x, y offset */
 
1332
                NULL,                  /* mode extension pointer */
 
1333
                0,                                 /* device dependant */
 
1334
                0                                  /* device dependant */
 
1335
        },
 
1336
#endif
 
1337
#ifdef CONFIG_MODE_1600x1200x65
 
1338
        {
 
1339
                1600, 1200,            /* width, height */
 
1340
                65, 175500,            /* refresh, dot clock */
 
1341
                2159,                  /* htotal */
 
1342
                1599, 2159,            /* hblank_start, hblank_end */
 
1343
                1663, 1855,            /* hsync_start, hsync_end */
 
1344
                1249,                  /* vtotal */
 
1345
                1199, 1249,            /* vblank_start, vblank_end */
 
1346
                1200, 1203,            /* vsync_start, vsync_end */
 
1347
                0x00,                  /* mode number */
 
1348
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1349
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1350
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1351
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1352
                0, 0,                  /* x, y offset */
 
1353
                NULL,                  /* mode extension pointer */
 
1354
                0,                                 /* device dependant */
 
1355
                0                                  /* device dependant */
 
1356
        },
 
1357
#endif
 
1358
#ifdef CONFIG_MODE_1600x1200x70
 
1359
        {
 
1360
                1600, 1200,            /* width, height */
 
1361
                70, 189000,            /* refresh, dot clock */
 
1362
                2159,                  /* htotal */
 
1363
                1599, 2159,            /* hblank_start, hblank_end */
 
1364
                1663, 1855,            /* hsync_start, hsync_end */
 
1365
                1249,                  /* vtotal */
 
1366
                1199, 1249,            /* vblank_start, vblank_end */
 
1367
                1200, 1203,            /* vsync_start, vsync_end */
 
1368
                0x00,                  /* mode number */
 
1369
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1370
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1371
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1372
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1373
                0, 0,                  /* x, y offset */
 
1374
                NULL,                  /* mode extension pointer */
 
1375
                0,                                 /* device dependant */
 
1376
                0                                  /* device dependant */
 
1377
        },
 
1378
#endif
 
1379
#ifdef CONFIG_MODE_1600x1200x72
 
1380
        {
 
1381
                1600, 1200,            /* width, height */
 
1382
                72, 195000,            /* refresh, dot clock */
 
1383
                2175,                  /* htotal */
 
1384
                1599, 2175,            /* hblank_start, hblank_end */
 
1385
                1711, 1887,            /* hsync_start, hsync_end */
 
1386
                1250,                  /* vtotal */
 
1387
                1199, 1250,            /* vblank_start, vblank_end */
 
1388
                1200, 1203,            /* vsync_start, vsync_end */
 
1389
                0x00,                  /* mode number */
 
1390
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1391
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1392
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1393
                0, 0,                  /* x, y offset */
 
1394
                NULL,                  /* mode extension pointer */
 
1395
                0,                                 /* device dependant */
 
1396
                0                                  /* device dependant */
 
1397
        },
 
1398
#endif
 
1399
#ifdef CONFIG_MODE_1600x1200x75
 
1400
        {
 
1401
                1600, 1200,            /* width, height */
 
1402
                75, 202500,            /* refresh, dot clock */
 
1403
                2159,                  /* htotal */
 
1404
                1599, 2159,            /* hblank_start, hblank_end */
 
1405
                1663, 1855,            /* hsync_start, hsync_end */
 
1406
                1249,                  /* vtotal */
 
1407
                1199, 1249,            /* vblank_start, vblank_end */
 
1408
                1200, 1203,            /* vsync_start, vsync_end */
 
1409
                0x00,                  /* mode number */
 
1410
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1411
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1412
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1413
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1414
                0, 0,                  /* x, y offset */
 
1415
                NULL,                  /* mode extension pointer */
 
1416
                0,                                 /* device dependant */
 
1417
                0                                  /* device dependant */
 
1418
        },
 
1419
#endif
 
1420
#ifdef CONFIG_MODE_1600x1200x85
 
1421
        {
 
1422
                1600, 1200,            /* width, height */
 
1423
                85, 229500,            /* refresh, dot clock */
 
1424
                2159,                  /* htotal */
 
1425
                1599, 2159,            /* hblank_start, hblank_end */
 
1426
                1663, 1855,            /* hsync_start, hsync_end */
 
1427
                1249,                  /* vtotal */
 
1428
                1199, 1249,            /* vblank_start, vblank_end */
 
1429
                1200, 1203,            /* vsync_start, vsync_end */
 
1430
                0x00,                  /* mode number */
 
1431
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1432
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1433
                IGD_HSYNC_HIGH|        /* polarity H+ */
 
1434
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1435
                0, 0,                  /* x, y offset */
 
1436
                NULL,                  /* mode extension pointer */
 
1437
                0,                                 /* device dependant */
 
1438
                0                                  /* device dependant */
 
1439
        },
 
1440
#endif
 
1441
#ifdef CONFIG_MODE_1600x1200x100
 
1442
        {
 
1443
                1600, 1200,            /* width, height */
 
1444
                100, 280640,           /* refresh, dot clock */
 
1445
                2207,                  /* htotal */
 
1446
                1599, 2207,            /* hblank_start, hblank_end */
 
1447
                1727, 1903,            /* hsync_start, hsync_end */
 
1448
                1270,                  /* vtotal */
 
1449
                1199, 1270,            /* vblank_start, vblank_end */
 
1450
                1200, 1203,            /* vsync_start, vsync_end */
 
1451
                0x00,                  /* mode number */
 
1452
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1453
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1454
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1455
                0, 0,                  /* x, y offset */
 
1456
                NULL,                  /* mode extension pointer */
 
1457
                0,                                 /* device dependant */
 
1458
                0                                  /* device dependant */
 
1459
        },
 
1460
#endif
 
1461
#ifdef CONFIG_MODE_1600x1200x120
 
1462
        {
 
1463
                1600, 1200,            /* width, height */
 
1464
                120, 343210,           /* refresh, dot clock */
 
1465
                2223,                  /* htotal */
 
1466
                1599, 2223,            /* hblank_start, hblank_end */
 
1467
                1735, 1911,            /* hsync_start, hsync_end */
 
1468
                1285,                  /* vtotal */
 
1469
                1199, 1285,            /* vblank_start, vblank_end */
 
1470
                1200, 1203,            /* vsync_start, vsync_end */
 
1471
                0x00,                  /* mode number */
 
1472
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1473
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1474
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1475
                0, 0,                  /* x, y offset */
 
1476
                NULL,                  /* mode extension pointer */
 
1477
                0,                                 /* device dependant */
 
1478
                0                                  /* device dependant */
 
1479
        },
 
1480
#endif
 
1481
#ifdef CONFIG_MODE_1856x1392x60
 
1482
        {
 
1483
                1856, 1392,            /* width, height */
 
1484
                60, 218250,            /* refresh, dot clock */
 
1485
                2527,                  /* htotal */
 
1486
                1855, 2527,            /* hblank_start, hblank_end */
 
1487
                1951, 2175,            /* hsync_start, hsync_end */
 
1488
                1438,                  /* vtotal */
 
1489
                1391, 1438,            /* vblank_start, vblank_end */
 
1490
                1392, 1395,            /* vsync_start, vsync_end */
 
1491
                0x00,                  /* mode number */
 
1492
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1493
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1494
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1495
                0, 0,                  /* x, y offset */
 
1496
                NULL,                  /* mode extension pointer */
 
1497
                0,                                 /* device dependant */
 
1498
                0                                  /* device dependant */
 
1499
        },
 
1500
#endif
 
1501
#ifdef CONFIG_MODE_1856x1392x75
 
1502
        {
 
1503
                1856, 1392,            /* width, height */
 
1504
                75, 288000,            /* refresh, dot clock */
 
1505
                2559,                  /* htotal */
 
1506
                1855, 2559,            /* hblank_start, hblank_end */
 
1507
                1983, 2207,            /* hsync_start, hsync_end */
 
1508
                1499,                  /* vtotal */
 
1509
                1391, 1499,            /* vblank_start, vblank_end */
 
1510
                1392, 1395,            /* vsync_start, vsync_end */
 
1511
                0x00,                  /* mode number */
 
1512
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1513
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1514
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1515
                0, 0,                  /* x, y offset */
 
1516
                NULL,                  /* mode extension pointer */
 
1517
                0,                                 /* device dependant */
 
1518
                0                                  /* device dependant */
 
1519
        },
 
1520
#endif
 
1521
#ifdef CONFIG_MODE_1920x1080x50
 
1522
        {
 
1523
                1920, 1080,            /* width, height */
 
1524
                50, 141446,            /* refresh, dot clock */
 
1525
                2543,                  /* htotal */
 
1526
                1919, 2543,            /* hblank_start, hblank_end */
 
1527
                2031, 2231,            /* hsync_start, hsync_end */
 
1528
                1111,                  /* vtotal */
 
1529
                1079, 1111,            /* vblank_start, vblank_end */
 
1530
                1080, 1083,            /* vsync_start, vsync_end */
 
1531
                0x00,                  /* mode number */
 
1532
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1533
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1534
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1535
                0, 0,                  /* x, y offset */
 
1536
                NULL,                  /* mode extension pointer */
 
1537
                0,                                 /* device dependant */
 
1538
                0                                  /* device dependant */
 
1539
        },
 
1540
#endif
 
1541
#ifdef CONFIG_MODE_1920x1080x60
 
1542
        {
 
1543
                1920, 1080,            /* width, height */
 
1544
                60, 172800,            /* refresh, dot clock */
 
1545
                2575,                  /* htotal */
 
1546
                1919, 2575,            /* hblank_start, hblank_end */
 
1547
                2039, 2247,            /* hsync_start, hsync_end */
 
1548
                1117,                  /* vtotal */
 
1549
                1079, 1117,            /* vblank_start, vblank_end */
 
1550
                1080, 1083,            /* vsync_start, vsync_end */
 
1551
                0x00,                  /* mode number */
 
1552
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1553
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1554
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1555
                0, 0,                  /* x, y offset */
 
1556
                NULL,                  /* mode extension pointer */
 
1557
                0,                                 /* device dependant */
 
1558
                0                                  /* device dependant */
 
1559
        },
 
1560
#endif
 
1561
#ifdef CONFIG_MODE_1920x1080x75
 
1562
        {
 
1563
                1920, 1080,            /* width, height */
 
1564
                75, 220640,            /* refresh, dot clock */
 
1565
                2607,                  /* htotal */
 
1566
                1919, 2607,            /* hblank_start, hblank_end */
 
1567
                2055, 2263,            /* hsync_start, hsync_end */
 
1568
                1127,                  /* vtotal */
 
1569
                1079, 1127,            /* vblank_start, vblank_end */
 
1570
                1080, 1083,            /* vsync_start, vsync_end */
 
1571
                0x00,                  /* mode number */
 
1572
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1573
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1574
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1575
                0, 0,                  /* x, y offset */
 
1576
                NULL,                  /* mode extension pointer */
 
1577
                0,                                 /* device dependant */
 
1578
                0                                  /* device dependant */
 
1579
        },
 
1580
#endif
 
1581
#ifdef CONFIG_MODE_1920x1080x85
 
1582
        {
 
1583
                1920, 1080,            /* width, height */
 
1584
                85, 252930,            /* refresh, dot clock */
 
1585
                2623,                  /* htotal */
 
1586
                1919, 2623,            /* hblank_start, hblank_end */
 
1587
                2063, 2271,            /* hsync_start, hsync_end */
 
1588
                1133,                  /* vtotal */
 
1589
                1079, 1133,            /* vblank_start, vblank_end */
 
1590
                1080, 1083,            /* vsync_start, vsync_end */
 
1591
                0x00,                  /* mode number */
 
1592
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1593
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1594
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1595
                0, 0,                  /* x, y offset */
 
1596
                NULL,                  /* mode extension pointer */
 
1597
                0,                                 /* device dependant */
 
1598
                0                                  /* device dependant */
 
1599
        },
 
1600
#endif
 
1601
#ifdef CONFIG_MODE_1920x1080x100
 
1602
        {
 
1603
                1920, 1080,            /* width, height */
 
1604
                100, 302020,           /* refresh, dot clock */
 
1605
                2639,                  /* htotal */
 
1606
                1919, 2639,            /* hblank_start, hblank_end */
 
1607
                2071, 2279,            /* hsync_start, hsync_end */
 
1608
                1143,                  /* vtotal */
 
1609
                1079, 1143,            /* vblank_start, vblank_end */
 
1610
                1080, 1083,            /* vsync_start, vsync_end */
 
1611
                0x00,                  /* mode number */
 
1612
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1613
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1614
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1615
                0, 0,                  /* x, y offset */
 
1616
                NULL,                  /* mode extension pointer */
 
1617
                0,                                 /* device dependant */
 
1618
                0                                  /* device dependant */
 
1619
        },
 
1620
#endif
 
1621
#ifdef CONFIG_MODE_1920x1200x60
 
1622
        {
 
1623
                1920, 1200,            /* width, height */
 
1624
                60, 193156,            /* refresh, dot clock */
 
1625
                2591,                  /* htotal */
 
1626
                1919, 2591,            /* hblank_start, hblank_end */
 
1627
                2047, 2255,            /* hsync_start, hsync_end */
 
1628
                1241,                  /* vtotal */
 
1629
                1199, 1241,            /* vblank_start, vblank_end */
 
1630
                1200, 1203,            /* vsync_start, vsync_end */
 
1631
                0x00,                  /* mode number */
 
1632
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1633
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1634
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1635
                0, 0,                  /* x, y offset */
 
1636
                NULL,                  /* mode extension pointer */
 
1637
                0,                                 /* device dependant */
 
1638
                0                                  /* device dependant */
 
1639
        },
 
1640
#endif
 
1641
#ifdef CONFIG_MODE_1920x1200x75
 
1642
        {
 
1643
                1920, 1200,            /* width, height */
 
1644
                75, 246590,            /* refresh, dot clock */
 
1645
                2623,                  /* htotal */
 
1646
                1919, 2623,            /* hblank_start, hblank_end */
 
1647
                2063, 2271,            /* hsync_start, hsync_end */
 
1648
                1252,                  /* vtotal */
 
1649
                1199, 1252,            /* vblank_start, vblank_end */
 
1650
                1200, 1203,            /* vsync_start, vsync_end */
 
1651
                0x00,                  /* mode number */
 
1652
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1653
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1654
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1655
                0, 0,                  /* x, y offset */
 
1656
                NULL,                  /* mode extension pointer */
 
1657
                0,                                 /* device dependant */
 
1658
                0                                  /* device dependant */
 
1659
        },
 
1660
#endif
 
1661
#ifdef CONFIG_MODE_1920x1440x60
 
1662
        {
 
1663
                1920, 1440,            /* width, height */
 
1664
                60, 234000,            /* refresh, dot clock */
 
1665
                2599,                  /* htotal */
 
1666
                1919, 2599,            /* hblank_start, hblank_end */
 
1667
                2047, 2255,            /* hsync_start, hsync_end */
 
1668
                1499,                  /* vtotal */
 
1669
                1439, 1499,            /* vblank_start, vblank_end */
 
1670
                1440, 1443,            /* vsync_start, vsync_end */
 
1671
                0x00,                  /* mode number */
 
1672
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1673
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1674
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1675
                0, 0,                  /* x, y offset */
 
1676
                NULL,                  /* mode extension pointer */
 
1677
                0,                                 /* device dependant */
 
1678
                0                                  /* device dependant */
 
1679
        },
 
1680
#endif
 
1681
#ifdef CONFIG_MODE_1920x1440x75
 
1682
        {
 
1683
                1920, 1440,            /* width, height */
 
1684
                75, 297000,            /* refresh, dot clock */
 
1685
                2639,                  /* htotal */
 
1686
                1919, 2639,            /* hblank_start, hblank_end */
 
1687
                2063, 2287,            /* hsync_start, hsync_end */
 
1688
                1499,                  /* vtotal */
 
1689
                1439, 1499,            /* vblank_start, vblank_end */
 
1690
                1440, 1443,            /* vsync_start, vsync_end */
 
1691
                0x00,                  /* mode number */
 
1692
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1693
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1694
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1695
                0, 0,                  /* x, y offset */
 
1696
                NULL,                  /* mode extension pointer */
 
1697
                0,                                 /* device dependant */
 
1698
                0                                  /* device dependant */
 
1699
        },
 
1700
#endif
 
1701
#ifdef CONFIG_MODE_1920x1440x85
 
1702
        {
 
1703
                1920, 1440,            /* width, height */
 
1704
                85, 341350,            /* refresh, dot clock */
 
1705
                2655,                  /* htotal */
 
1706
                1919, 2655,            /* hblank_start, hblank_end */
 
1707
                2071, 2287,            /* hsync_start, hsync_end */
 
1708
                1511,                  /* vtotal */
 
1709
                1439, 1511,            /* vblank_start, vblank_end */
 
1710
                1440, 1443,            /* vsync_start, vsync_end */
 
1711
                0x00,                  /* mode number */
 
1712
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1713
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1714
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1715
                0, 0,                  /* x, y offset */
 
1716
                NULL,                  /* mode extension pointer */
 
1717
                0,                                 /* device dependant */
 
1718
                0                                  /* device dependant */
 
1719
        },
 
1720
#endif
 
1721
#ifdef CONFIG_MODE_2048x1536x60
 
1722
        {
 
1723
                2048, 1536,            /* width, height */
 
1724
                60, 266950,            /* refresh, dot clock */
 
1725
                2799,                  /* htotal */
 
1726
                2047, 2799,            /* hblank_start, hblank_end */
 
1727
                2199, 2423,            /* hsync_start, hsync_end */
 
1728
                1588,                  /* vtotal */
 
1729
                1535, 1588,            /* vblank_start, vblank_end */
 
1730
                1536, 1539,            /* vsync_start, vsync_end */
 
1731
                0x00,                  /* mode number */
 
1732
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1733
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1734
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1735
                0, 0,                  /* x, y offset */
 
1736
                NULL,                  /* mode extension pointer */
 
1737
                0,                                 /* device dependant */
 
1738
                0                                  /* device dependant */
 
1739
        },
 
1740
#endif
 
1741
#ifdef CONFIG_MODE_2048x1536x75
 
1742
        {
 
1743
                2048, 1536,            /* width, height */
 
1744
                75, 340480,            /* refresh, dot clock */
 
1745
                2831,                  /* htotal */
 
1746
                2047, 2831,            /* hblank_start, hblank_end */
 
1747
                2215, 2439,            /* hsync_start, hsync_end */
 
1748
                1602,                  /* vtotal */
 
1749
                1535, 1602,            /* vblank_start, vblank_end */
 
1750
                1536, 1539,            /* vsync_start, vsync_end */
 
1751
                0x00,                  /* mode number */
 
1752
                PD_MODE_SUPPORTED |    /* enable the mode */
 
1753
                IGD_SCAN_PROGRESSIVE|  /* mode info flags */
 
1754
                IGD_VSYNC_HIGH,        /* polarity V+ */
 
1755
                0, 0,                  /* x, y offset */
 
1756
                NULL,                  /* mode extension pointer */
 
1757
                0,                                 /* device dependant */
 
1758
                0                                  /* device dependant */
 
1759
        },
 
1760
#endif
 
1761
        PD_TIMING_TABLE_END
 
1762
};
 
1763
 
 
1764
int crt_timing_table_size = sizeof(crt_timing_table);
 
1765
 
 
1766
#ifndef CONFIG_NEW_MATCH
 
1767
/*---------------------------------------------------------------------------
 
1768
 * Timing tables for VGA modes
 
1769
 *---------------------------------------------------------------------------
 
1770
 */
 
1771
igd_timing_info_t vga_timing_table[] =
 
1772
{
 
1773
        {   /* VGA Mode 0 */
 
1774
                320, 200,              /* width, height */
 
1775
                60, 25175,             /* refresh, dot clock */
 
1776
                399,                   /* htotal */
 
1777
                319, 383,              /* hblank_start, hblank_end */
 
1778
                343, 383,              /* hsync_start, hsync_end */
 
1779
                448,                   /* vtotal */
 
1780
                405, 440,              /* vblank_start, vblank_end */
 
1781
                411, 413,              /* vsync_start, vsync_end */
 
1782
                0x00,                  /* mode number */
 
1783
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1784
                IGD_MODE_TEXT |
 
1785
                IGD_LINE_DOUBLE |
 
1786
                IGD_PIXEL_DOUBLE |
 
1787
                IGD_VSYNC_HIGH |
 
1788
                IGD_MODE_SUPPORTED |
 
1789
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1790
                0, 0,                  /* x, y offset */
 
1791
                NULL,                  /* mode extension pointer */
 
1792
                0,                                 /* device dependant */
 
1793
                0                                  /* device dependant */
 
1794
        },
 
1795
        {   /* VGA Mode 1 */
 
1796
                320, 200,              /* width, height */
 
1797
                60, 25175,             /* refresh, dot clock */
 
1798
                399,                   /* htotal */
 
1799
                319, 383,              /* hblank_start, hblank_end */
 
1800
                343, 383,              /* hsync_start, hsync_end */
 
1801
                448,                   /* vtotal */
 
1802
                405, 440,              /* vblank_start, vblank_end */
 
1803
                411, 413,              /* vsync_start, vsync_end */
 
1804
                0x01,                  /* mode number */
 
1805
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1806
                IGD_MODE_TEXT |
 
1807
                IGD_LINE_DOUBLE |
 
1808
                IGD_PIXEL_DOUBLE |
 
1809
                IGD_VSYNC_HIGH |
 
1810
                IGD_MODE_SUPPORTED |
 
1811
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1812
                0, 0,                  /* x, y offset */
 
1813
                NULL,                  /* mode extension pointer */
 
1814
                0,                                 /* device dependant */
 
1815
                0                                  /* device dependant */
 
1816
        },
 
1817
        {   /* VGA Mode 2 */
 
1818
                640, 200,              /* width, height */
 
1819
                70, 25175,             /* refresh, dot clock */
 
1820
                799,                   /* htotal */
 
1821
                639, 783,              /* hblank_start, hblank_end */
 
1822
                679, 775,              /* hsync_start, hsync_end */
 
1823
                448,                   /* vtotal */
 
1824
                405, 440,              /* vblank_start, vblank_end */
 
1825
                411, 413,              /* vsync_start, vsync_end */
 
1826
                0x02,                  /* mode number */
 
1827
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1828
                IGD_MODE_TEXT |
 
1829
                IGD_LINE_DOUBLE |
 
1830
                IGD_VSYNC_HIGH |
 
1831
                IGD_MODE_SUPPORTED |
 
1832
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1833
                0, 0,                  /* x, y offset */
 
1834
                NULL,                  /* mode extension pointer */
 
1835
                0,                                 /* device dependant */
 
1836
                0                                  /* device dependant */
 
1837
        },
 
1838
        {   /* VGA Mode 3 */
 
1839
                640, 200,              /* width, height */
 
1840
                70, 25175,             /* refresh, dot clock */
 
1841
                799,                   /* htotal */
 
1842
                639, 783,              /* hblank_start, hblank_end */
 
1843
                679, 775,              /* hsync_start, hsync_end */
 
1844
                448,                   /* vtotal */
 
1845
                405, 440,              /* vblank_start, vblank_end */
 
1846
                411, 413,              /* vsync_start, vsync_end */
 
1847
                0x03,                  /* mode number */
 
1848
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1849
                IGD_MODE_TEXT |
 
1850
                IGD_LINE_DOUBLE |
 
1851
                IGD_VSYNC_HIGH |
 
1852
                IGD_MODE_SUPPORTED |
 
1853
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1854
                0, 0,                  /* x, y offset */
 
1855
                NULL,                  /* mode extension pointer */
 
1856
                0,                                 /* device dependant */
 
1857
                0                                  /* device dependant */
 
1858
        },
 
1859
        {   /* VGA Mode 4 */
 
1860
                320, 200,              /* width, height */
 
1861
                60, 25175,             /* refresh, dot clock */
 
1862
                399,                   /* htotal */
 
1863
                319, 383,              /* hblank_start, hblank_end */
 
1864
                343, 383,              /* hsync_start, hsync_end */
 
1865
                448,                   /* vtotal */
 
1866
                405, 440,              /* vblank_start, vblank_end */
 
1867
                411, 413,              /* vsync_start, vsync_end */
 
1868
                0x04,                  /* mode number */
 
1869
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1870
                IGD_LINE_DOUBLE |
 
1871
                IGD_VSYNC_HIGH |
 
1872
                IGD_MODE_SUPPORTED |
 
1873
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1874
                0, 0,                  /* x, y offset */
 
1875
                NULL,                  /* mode extension pointer */
 
1876
                0,                                 /* device dependant */
 
1877
                0                                  /* device dependant */
 
1878
        },
 
1879
        {   /* VGA Mode 5 */
 
1880
                320, 200,              /* width, height */
 
1881
                60, 25175,             /* refresh, dot clock */
 
1882
                399,                   /* htotal */
 
1883
                319, 383,              /* hblank_start, hblank_end */
 
1884
                343, 383,              /* hsync_start, hsync_end */
 
1885
                448,                   /* vtotal */
 
1886
                405, 440,              /* vblank_start, vblank_end */
 
1887
                411, 413,              /* vsync_start, vsync_end */
 
1888
                0x05,                  /* mode number */
 
1889
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1890
                IGD_LINE_DOUBLE |
 
1891
                IGD_VSYNC_HIGH |
 
1892
                IGD_MODE_SUPPORTED |
 
1893
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1894
                0, 0,                  /* x, y offset */
 
1895
                NULL,                  /* mode extension pointer */
 
1896
                0,                                 /* device dependant */
 
1897
                0                                  /* device dependant */
 
1898
        },
 
1899
        {   /* VGA Mode 6 */
 
1900
                640, 200,              /* width, height */
 
1901
                60, 25175,             /* refresh, dot clock */
 
1902
                799,                   /* htotal */
 
1903
                639, 784,              /* hblank_start, hblank_end */
 
1904
                671, 767,              /* hsync_start, hsync_end */
 
1905
                448,                   /* vtotal */
 
1906
                405, 440,              /* vblank_start, vblank_end */
 
1907
                411, 413,              /* vsync_start, vsync_end */
 
1908
                0x06,                  /* mode number */
 
1909
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1910
                IGD_LINE_DOUBLE |
 
1911
                IGD_VSYNC_HIGH |
 
1912
                IGD_MODE_SUPPORTED |
 
1913
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1914
                0, 0,                  /* x, y offset */
 
1915
                NULL,                  /* mode extension pointer */
 
1916
                0,                                 /* device dependant */
 
1917
                0                                  /* device dependant */
 
1918
        },
 
1919
        {   /* VGA Mode 7 */
 
1920
                720, 350,              /* width, height */
 
1921
                60, 28322,             /* refresh, dot clock */
 
1922
                899,                   /* htotal */
 
1923
                719, 881,              /* hblank_start, hblank_end */
 
1924
                764, 872,              /* hsync_start, hsync_end */
 
1925
                448,                   /* vtotal */
 
1926
                354, 441,              /* vblank_start, vblank_end */
 
1927
                386, 388,              /* vsync_start, vsync_end */
 
1928
                0x07,                  /* mode number */
 
1929
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1930
                IGD_MODE_TEXT |
 
1931
                IGD_HSYNC_HIGH |
 
1932
                IGD_MODE_SUPPORTED |
 
1933
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1934
                0, 0,                  /* x, y offset */
 
1935
                NULL,                  /* mode extension pointer */
 
1936
                0,                                 /* device dependant */
 
1937
                0                                  /* device dependant */
 
1938
        },
 
1939
        {   /* VGA Mode d */
 
1940
                320, 200,              /* width, height */
 
1941
                60, 25175,             /* refresh, dot clock */
 
1942
                399,                   /* htotal */
 
1943
                319, 383,              /* hblank_start, hblank_end */
 
1944
                343, 383,              /* hsync_start, hsync_end */
 
1945
                448,                   /* vtotal */
 
1946
                405, 440,              /* vblank_start, vblank_end */
 
1947
                411, 413,              /* vsync_start, vsync_end */
 
1948
                0x0d,                  /* mode number */
 
1949
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1950
                IGD_LINE_DOUBLE |
 
1951
                IGD_PIXEL_DOUBLE |
 
1952
                IGD_VSYNC_HIGH |
 
1953
                IGD_MODE_SUPPORTED |
 
1954
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1955
                0, 0,                  /* x, y offset */
 
1956
                NULL,                  /* mode extension pointer */
 
1957
                0,                                 /* device dependant */
 
1958
                0                                  /* device dependant */
 
1959
        },
 
1960
        {   /* VGA Mode e */
 
1961
                640, 200,              /* width, height */
 
1962
                60, 25175,             /* refresh, dot clock */
 
1963
                799,                   /* htotal */
 
1964
                639, 783,              /* hblank_start, hblank_end */
 
1965
                671, 767,              /* hsync_start, hsync_end */
 
1966
                448,                   /* vtotal */
 
1967
                405, 440,              /* vblank_start, vblank_end */
 
1968
                411, 413,              /* vsync_start, vsync_end */
 
1969
                0x0e,                  /* mode number */
 
1970
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1971
                IGD_LINE_DOUBLE |
 
1972
                IGD_VSYNC_HIGH |
 
1973
                IGD_MODE_SUPPORTED |
 
1974
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1975
                0, 0,                  /* x, y offset */
 
1976
                NULL,                  /* mode extension pointer */
 
1977
                0,                                 /* device dependant */
 
1978
                0                                  /* device dependant */
 
1979
        },
 
1980
        {   /* VGA Mode f */
 
1981
                640, 350,              /* width, height */
 
1982
                60, 25175,             /* refresh, dot clock */
 
1983
                799,                   /* htotal */
 
1984
                639, 783,              /* hblank_start, hblank_end */
 
1985
                671, 767,              /* hsync_start, hsync_end */
 
1986
                448,                   /* vtotal */
 
1987
                354, 441,              /* vblank_start, vblank_end */
 
1988
                386, 388,              /* vsync_start, vsync_end */
 
1989
                0x11,                  /* mode number */
 
1990
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
1991
                IGD_HSYNC_HIGH |
 
1992
                IGD_MODE_SUPPORTED |
 
1993
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
1994
                0, 0,                  /* x, y offset */
 
1995
                NULL,                  /* mode extension pointer */
 
1996
                0,                                 /* device dependant */
 
1997
                0                                  /* device dependant */
 
1998
        },
 
1999
        {   /* VGA Mode 10 */
 
2000
                640, 350,              /* width, height */
 
2001
                60, 25175,             /* refresh, dot clock */
 
2002
                799,                   /* htotal */
 
2003
                639, 783,              /* hblank_start, hblank_end */
 
2004
                671, 767,              /* hsync_start, hsync_end */
 
2005
                448,                   /* vtotal */
 
2006
                354, 441,              /* vblank_start, vblank_end */
 
2007
                386, 388,              /* vsync_start, vsync_end */
 
2008
                0x12,                  /* mode number */
 
2009
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2010
                IGD_HSYNC_HIGH |
 
2011
                IGD_MODE_SUPPORTED |
 
2012
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2013
                0, 0,                  /* x, y offset */
 
2014
                NULL,                  /* mode extension pointer */
 
2015
                0,                                 /* device dependant */
 
2016
                0                                  /* device dependant */
 
2017
        },
 
2018
        {   /* VGA Mode 0* */
 
2019
                320, 350,              /* width, height */
 
2020
                60, 25175,             /* refresh, dot clock */
 
2021
                399,                   /* htotal */
 
2022
                319, 383,              /* hblank_start, hblank_end */
 
2023
                343, 383,              /* hsync_start, hsync_end */
 
2024
                448,                   /* vtotal */
 
2025
                354, 441,              /* vblank_start, vblank_end */
 
2026
                386, 388,              /* vsync_start, vsync_end */
 
2027
                0x13,                  /* mode number */
 
2028
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2029
                IGD_PIXEL_DOUBLE |
 
2030
                IGD_MODE_TEXT |
 
2031
                IGD_HSYNC_HIGH |
 
2032
                IGD_MODE_SUPPORTED |
 
2033
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2034
                0, 0,                  /* x, y offset */
 
2035
                NULL,                  /* mode extension pointer */
 
2036
                0,                                 /* device dependant */
 
2037
                0                                  /* device dependant */
 
2038
        },
 
2039
        {   /* VGA Mode 1* */
 
2040
                320, 350,              /* width, height */
 
2041
                60, 25175,             /* refresh, dot clock */
 
2042
                399,                   /* htotal */
 
2043
                319, 383,              /* hblank_start, hblank_end */
 
2044
                343, 383,              /* hsync_start, hsync_end */
 
2045
                448,                   /* vtotal */
 
2046
                354, 441,              /* vblank_start, vblank_end */
 
2047
                386, 388,              /* vsync_start, vsync_end */
 
2048
                0x14,                  /* mode number */
 
2049
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2050
                IGD_PIXEL_DOUBLE |
 
2051
                IGD_MODE_TEXT |
 
2052
                IGD_HSYNC_HIGH |
 
2053
                IGD_MODE_SUPPORTED |
 
2054
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2055
                0, 0,                  /* x, y offset */
 
2056
                NULL,                  /* mode extension pointer */
 
2057
                0,                                 /* device dependant */
 
2058
                0                                  /* device dependant */
 
2059
        },
 
2060
        {   /* VGA Mode 2* */
 
2061
                640, 350,              /* width, height */
 
2062
                70, 25175,             /* refresh, dot clock */
 
2063
                799,                   /* htotal */
 
2064
                639, 783,              /* hblank_start, hblank_end */
 
2065
                679, 775,              /* hsync_start, hsync_end */
 
2066
                448,                   /* vtotal */
 
2067
                354, 441,              /* vblank_start, vblank_end */
 
2068
                386, 388,              /* vsync_start, vsync_end */
 
2069
                0x15,                  /* mode number */
 
2070
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2071
                IGD_MODE_TEXT |
 
2072
                IGD_HSYNC_HIGH |
 
2073
                IGD_MODE_SUPPORTED |
 
2074
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2075
                0, 0,                  /* x, y offset */
 
2076
                NULL,                  /* mode extension pointer */
 
2077
                0,                                 /* device dependant */
 
2078
                0                                  /* device dependant */
 
2079
        },
 
2080
        {   /* VGA Mode 3* */
 
2081
                640, 350,              /* width, height */
 
2082
                70, 25175,             /* refresh, dot clock */
 
2083
                799,                   /* htotal */
 
2084
                639, 783,              /* hblank_start, hblank_end */
 
2085
                679, 775,              /* hsync_start, hsync_end */
 
2086
                448,                   /* vtotal */
 
2087
                354, 441,              /* vblank_start, vblank_end */
 
2088
                386, 388,              /* vsync_start, vsync_end */
 
2089
                0x16,                  /* mode number */
 
2090
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2091
                IGD_MODE_TEXT |
 
2092
                IGD_HSYNC_HIGH |
 
2093
                IGD_MODE_SUPPORTED |
 
2094
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2095
                0, 0,                  /* x, y offset */
 
2096
                NULL,                  /* mode extension pointer */
 
2097
                0,                                 /* device dependant */
 
2098
                0                                  /* device dependant */
 
2099
        },
 
2100
        {   /* VGA Mode 0+,1+ */
 
2101
                360, 400,              /* width, height */
 
2102
                60, 28322,             /* refresh, dot clock */
 
2103
                449,                   /* htotal */
 
2104
                359, 431,              /* hblank_start, hblank_end */
 
2105
                386, 431,              /* hsync_start, hsync_end */
 
2106
                448,                   /* vtotal */
 
2107
                405, 440,              /* vblank_start, vblank_end */
 
2108
                411, 413,              /* vsync_start, vsync_end */
 
2109
                0x17,                  /* mode number */
 
2110
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2111
                IGD_PIXEL_DOUBLE |
 
2112
                IGD_MODE_TEXT |
 
2113
                IGD_VSYNC_HIGH |
 
2114
                IGD_MODE_SUPPORTED |
 
2115
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2116
                0, 0,                  /* x, y offset */
 
2117
                NULL,                  /* mode extension pointer */
 
2118
                0,                                 /* device dependant */
 
2119
                0                                  /* device dependant */
 
2120
        },
 
2121
        {   /* VGA Mode 2+,3+ */
 
2122
                720, 400,              /* width, height */
 
2123
                70, 28322,             /* refresh, dot clock */
 
2124
                899,                   /* htotal */
 
2125
                719, 881,              /* hblank_start, hblank_end */
 
2126
                764, 872,              /* hsync_start, hsync_end */
 
2127
                448,                   /* vtotal */
 
2128
                405, 440,              /* vblank_start, vblank_end */
 
2129
                411, 413,              /* vsync_start, vsync_end */
 
2130
                0x18,                  /* mode number */
 
2131
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2132
                IGD_MODE_TEXT |
 
2133
                IGD_VSYNC_HIGH |
 
2134
                IGD_MODE_SUPPORTED |
 
2135
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2136
                0, 0,                  /* x, y offset */
 
2137
                NULL,                  /* mode extension pointer */
 
2138
                0,                                 /* device dependant */
 
2139
                0                                  /* device dependant */
 
2140
        },
 
2141
        {   /* VGA Mode 7+ */
 
2142
                720, 400,              /* width, height */
 
2143
                60, 28322,             /* refresh, dot clock */
 
2144
                899,                   /* htotal */
 
2145
                719, 881,              /* hblank_start, hblank_end */
 
2146
                764, 872,              /* hsync_start, hsync_end */
 
2147
                448,                   /* vtotal */
 
2148
                405, 440,              /* vblank_start, vblank_end */
 
2149
                411, 413,              /* vsync_start, vsync_end */
 
2150
                0x19,                  /* mode number */
 
2151
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2152
                IGD_MODE_TEXT |
 
2153
                IGD_VSYNC_HIGH |
 
2154
                IGD_MODE_SUPPORTED |
 
2155
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2156
                0, 0,                  /* x, y offset */
 
2157
                NULL,                  /* mode extension pointer */
 
2158
                0,                                 /* device dependant */
 
2159
                0                                  /* device dependant */
 
2160
        },
 
2161
        {   /* VGA Mode 11 */
 
2162
                640, 480,              /* width, height */
 
2163
                60, 25175,             /* refresh, dot clock */
 
2164
                799,                   /* htotal */
 
2165
                639, 783,              /* hblank_start, hblank_end */
 
2166
                671, 767,              /* hsync_start, hsync_end */
 
2167
                524,                   /* vtotal */
 
2168
                486, 515,              /* vblank_start, vblank_end */
 
2169
                489, 491,              /* vsync_start, vsync_end */
 
2170
                0x1A,                  /* mode number */
 
2171
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2172
                IGD_MODE_SUPPORTED |
 
2173
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2174
                0, 0,                  /* x, y offset */
 
2175
                NULL,                  /* mode extension pointer */
 
2176
                0,                                 /* device dependant */
 
2177
                0                                  /* device dependant */
 
2178
        },
 
2179
        {   /* VGA Mode 12 */
 
2180
                640, 480,              /* width, height */
 
2181
                60, 25175,             /* refresh, dot clock */
 
2182
                799,                   /* htotal */
 
2183
                639, 783,              /* hblank_start, hblank_end */
 
2184
                671, 767,              /* hsync_start, hsync_end */
 
2185
                524,                   /* vtotal */
 
2186
                486, 515,              /* vblank_start, vblank_end */
 
2187
                489, 491,              /* vsync_start, vsync_end */
 
2188
                0x1B,                  /* mode number */
 
2189
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2190
                IGD_MODE_SUPPORTED |
 
2191
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2192
                0, 0,                  /* x, y offset */
 
2193
                NULL,                  /* mode extension pointer */
 
2194
                0,                                 /* device dependant */
 
2195
                0                                  /* device dependant */
 
2196
        },
 
2197
        {   /* VGA Mode 13 */
 
2198
                320, 200,              /* width, height */
 
2199
                60, 25175,             /* refresh, dot clock */
 
2200
                799,                   /* htotal */
 
2201
                639, 783,              /* hblank_start, hblank_end */
 
2202
                671, 767,              /* hsync_start, hsync_end */
 
2203
                448,                   /* vtotal */
 
2204
                405, 440,              /* vblank_start, vblank_end */
 
2205
                411, 413,              /* vsync_start, vsync_end */
 
2206
                0x1C,                  /* mode number */
 
2207
                IGD_MODE_VESA |        /* VESA/VGA mode */
 
2208
                IGD_LINE_DOUBLE |
 
2209
                IGD_PIXEL_DOUBLE |
 
2210
                IGD_MODE_SUPPORTED |
 
2211
                IGD_SCAN_PROGRESSIVE,  /* mode info flags */
 
2212
                0, 0,                  /* x, y offset */
 
2213
                NULL,                  /* mode extension pointer */
 
2214
                0,                                 /* device dependant */
 
2215
                0                                  /* device dependant */
 
2216
        },
 
2217
 
 
2218
        PD_TIMING_TABLE_END
 
2219
};
 
2220
#endif
 
2221
 
 
2222
/* CEA standard timings: Get them from CEA-861. This is following DPG.
 
2223
   We will replace the mode number to CEA*/
 
2224
igd_timing_info_t cea_timing_table[] =
 
2225
{
 
2226
#ifdef CONFIG_CEA_MODE_640x480px60
 
2227
        {
 
2228
                640, 480,              /* width, height */
 
2229
                60, 25200,             /* refresh, dot clock */
 
2230
                800,                   /* htotal */
 
2231
                640, 799,              /* hblank_start, hblank_end */
 
2232
                656, 751,              /* hsync_start, hsync_end */
 
2233
                525,                   /* vtotal */
 
2234
                480, 524,              /* vblank_start, vblank_end */
 
2235
                490, 491,              /* vsync_start, vsync_end */
 
2236
                1,                                         /* mode number */
 
2237
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2238
                IGD_SCAN_PROGRESSIVE |
 
2239
                PD_MODE_CEA,               /* mode info flags */
 
2240
                0, 0,                  /* x, y offset */
 
2241
                0,                                 /* device dependant */
 
2242
                0,                                 /* device dependant */
 
2243
                0                                  /* device dependant */
 
2244
        },
 
2245
#endif
 
2246
#ifdef CONFIG_CEA_MODE_720x480px60
 
2247
        {
 
2248
                720, 480,              /* width, height */
 
2249
                60, 27000,             /* refresh, dot clock */
 
2250
                858,                   /* htotal */
 
2251
                720, 857,              /* hblank_start, hblank_end */
 
2252
                736, 797,              /* hsync_start, hsync_end */
 
2253
                525,                   /* vtotal */
 
2254
                480, 524,              /* vblank_start, vblank_end */
 
2255
                489, 494,              /* vsync_start, vsync_end */
 
2256
                2,                                         /* mode number */
 
2257
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2258
                IGD_SCAN_PROGRESSIVE |
 
2259
                PD_MODE_CEA,               /* mode info flags */
 
2260
                0, 0,                  /* x, y offset */
 
2261
                NULL,                  /* mode extension pointer */
 
2262
                0,                                 /* device dependant */
 
2263
                0                                  /* device dependant */
 
2264
        },
 
2265
#endif
 
2266
#ifdef CONFIG_CEA_MODE_720x480p_ax60
 
2267
        {
 
2268
                720, 480,              /* width, height */
 
2269
                60, 27000,             /* refresh, dot clock */
 
2270
                858,                   /* htotal */
 
2271
                720, 857,              /* hblank_start, hblank_end */
 
2272
                736, 797,              /* hsync_start, hsync_end */
 
2273
                525,                   /* vtotal */
 
2274
                480, 524,              /* vblank_start, vblank_end */
 
2275
                489, 494,              /* vsync_start, vsync_end */
 
2276
                3,                     /* mode number */
 
2277
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2278
                IGD_SCAN_PROGRESSIVE |
 
2279
                PD_MODE_CEA |          /* mode info flags */
 
2280
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2281
                0, 0,                  /* x, y offset */
 
2282
                NULL,                  /* mode extension pointer */
 
2283
                0,                                 /* device dependant */
 
2284
                0                                  /* device dependant */
 
2285
        },
 
2286
#endif
 
2287
#ifdef CONFIG_CEA_MODE_720x576px50
 
2288
        {
 
2289
                720, 576,              /* width, height */
 
2290
                50, 27000,             /* refresh, dot clock */
 
2291
                864,                   /* htotal */
 
2292
                720, 863,              /* hblank_start, hblank_end */
 
2293
                732, 795,              /* hsync_start, hsync_end */
 
2294
                625,                   /* vtotal */
 
2295
                575, 624,              /* vblank_start, vblank_end */
 
2296
                581, 585,              /* vsync_start, vsync_end */
 
2297
                17,                    /* mode number */
 
2298
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2299
                IGD_SCAN_PROGRESSIVE |
 
2300
                PD_MODE_CEA,               /* mode info flags */
 
2301
                0, 0,                  /* x, y offset */
 
2302
                NULL,                  /* mode extension pointer */
 
2303
                0,                                 /* device dependant */
 
2304
                0                                  /* device dependant */
 
2305
        },
 
2306
#endif
 
2307
#ifdef CONFIG_CEA_MODE_720x576p_ax50
 
2308
        {
 
2309
                720, 576,              /* width, height */
 
2310
                50, 27000,             /* refresh, dot clock */
 
2311
                864,                   /* htotal */
 
2312
                720, 863,              /* hblank_start, hblank_end */
 
2313
                732, 795,              /* hsync_start, hsync_end */
 
2314
                625,                   /* vtotal */
 
2315
                575, 624,              /* vblank_start, vblank_end */
 
2316
                581, 585,              /* vsync_start, vsync_end */
 
2317
                18,                    /* mode number */
 
2318
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2319
                IGD_SCAN_PROGRESSIVE |
 
2320
                PD_MODE_CEA |              /* mode info flags */
 
2321
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2322
                0, 0,                  /* x, y offset */
 
2323
                NULL,                  /* mode extension pointer */
 
2324
                0,                                 /* device dependant */
 
2325
                0                                  /* device dependant */
 
2326
        },
 
2327
#endif
 
2328
#ifdef CONFIG_CEA_MODE_1280x720p_ax50
 
2329
        {
 
2330
                1280, 720,             /* width, height */
 
2331
                50, 74250,             /* refresh, dot clock */
 
2332
                1980,                  /* htotal */
 
2333
                1280, 1979,            /* hblank_start, hblank_end */
 
2334
                1720, 1759,            /* hsync_start, hsync_end */
 
2335
                750,                   /* vtotal */
 
2336
                720, 749,              /* vblank_start, vblank_end */
 
2337
                725, 729,              /* vsync_start, vsync_end */
 
2338
                19,                    /* mode number */
 
2339
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2340
                IGD_SCAN_PROGRESSIVE |
 
2341
                PD_MODE_CEA |              /* mode info flags */
 
2342
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2343
                0, 0,                  /* x, y offset */
 
2344
                NULL,                  /* mode extension pointer */
 
2345
                0,                                 /* device dependant */
 
2346
                0                                  /* device dependant */
 
2347
        },
 
2348
#endif
 
2349
#ifdef CONFIG_CEA_MODE_1280x720p_ax60
 
2350
        {
 
2351
                1280, 720,             /* width, height */
 
2352
                60, 74250,             /* refresh, dot clock */
 
2353
                1650,                  /* htotal */
 
2354
                1280, 1649,            /* hblank_start, hblank_end */
 
2355
                1390, 1429,            /* hsync_start, hsync_end */
 
2356
                750,                   /* vtotal */
 
2357
                720, 749,              /* vblank_start, vblank_end */
 
2358
                725, 729,              /* vsync_start, vsync_end */
 
2359
                4,                     /* mode number */
 
2360
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2361
                IGD_SCAN_PROGRESSIVE | /* mode info flags */
 
2362
                IGD_VSYNC_HIGH |
 
2363
                PD_MODE_CEA |              /* polarity V+ */
 
2364
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2365
                0, 0,                  /* x, y offset */
 
2366
                NULL,                  /* mode extension pointer */
 
2367
                0,                                 /* device dependant */
 
2368
                0                                  /* device dependant */
 
2369
        },
 
2370
#endif
 
2371
/* KIV. Not proper timimgs, rerefer to DPG updates */
 
2372
#ifdef CONFIG_CEA_MODE_1920x1080p_ax50
 
2373
        {
 
2374
                1920, 1080,            /* width, height */
 
2375
                50, 148500,            /* refresh, dot clock */
 
2376
                2640,                  /* htotal */
 
2377
                1920, 2639,            /* hblank_start, hblank_end */
 
2378
                2448, 2491,            /* hsync_start, hsync_end */
 
2379
                1125,                  /* vtotal */
 
2380
                1080, 1124,            /* vblank_start, vblank_end */
 
2381
                1084, 1088,            /* vsync_start, vsync_end */
 
2382
                31,                    /* mode number */
 
2383
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2384
                IGD_SCAN_PROGRESSIVE | /* mode info flags */
 
2385
                IGD_VSYNC_HIGH |
 
2386
                PD_MODE_CEA |              /* polarity V+ */
 
2387
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2388
                0, 0,                  /* x, y offset */
 
2389
                NULL,                  /* mode extension pointer */
 
2390
                0,                                 /* device dependant */
 
2391
                0                                  /* device dependant */
 
2392
        },
 
2393
#endif
 
2394
#ifdef CONFIG_CEA_MODE_1920x1080p_ax60
 
2395
        {
 
2396
                1920, 1080,            /* width, height */
 
2397
                60, 148500,            /* refresh, dot clock */
 
2398
                2200,                  /* htotal */
 
2399
                1920, 2199,            /* hblank_start, hblank_end */
 
2400
                2008, 2051,            /* hsync_start, hsync_end */
 
2401
                1125,                  /* vtotal */
 
2402
                1080, 1124,            /* vblank_start, vblank_end */
 
2403
                1084, 1088,            /* vsync_start, vsync_end */
 
2404
                16,                     /* mode number */
 
2405
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2406
                IGD_SCAN_PROGRESSIVE | /* mode info flags */
 
2407
                IGD_VSYNC_HIGH |
 
2408
                PD_MODE_CEA |          /* polarity V+ */
 
2409
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2410
                0, 0,                  /* x, y offset */
 
2411
                NULL,                  /* mode extension pointer */
 
2412
                0,                                 /* device dependant */
 
2413
                0                                  /* device dependant */
 
2414
        },
 
2415
#endif
 
2416
#ifdef CONFIG_CEA_MODE_1920x1080i_ax50
 
2417
        {
 
2418
                1920, 1080,            /* width, height */
 
2419
                25, 74250,             /* refresh, dot clock */
 
2420
                2640,                  /* htotal */
 
2421
                1920, 2639,            /* hblank_start, hblank_end */
 
2422
                2448, 2491,            /* hsync_start, hsync_end */
 
2423
                1124,                  /* vtotal */
 
2424
                1080, 1123,            /* vblank_start, vblank_end */
 
2425
                1084, 1093,            /* vsync_start, vsync_end */
 
2426
                20,                                        /* mode number */
 
2427
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2428
                IGD_SCAN_INTERLACE |   /* mode info flags */
 
2429
                IGD_VSYNC_HIGH |
 
2430
                PD_MODE_CEA |              /* polarity V+ */
 
2431
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2432
                0, 0,                  /* x, y offset */
 
2433
                NULL,                  /* mode extension pointer */
 
2434
                0,                                 /* device dependant */
 
2435
                0                                  /* device dependant */
 
2436
        },
 
2437
#endif
 
2438
#ifdef CONFIG_CEA_MODE_1920x1080i_ax60
 
2439
        {
 
2440
                1920, 1080,            /* width, height */
 
2441
                30, 74250,             /* refresh, dot clock */
 
2442
                2200,                  /* htotal */
 
2443
                1920, 2199,            /* hblank_start, hblank_end */
 
2444
                2008, 2051,            /* hsync_start, hsync_end */
 
2445
                1124,                  /* vtotal */
 
2446
                1080, 1123,            /* vblank_start, vblank_end */
 
2447
                1084, 1093,            /* vsync_start, vsync_end */
 
2448
                5,                                         /* mode number */
 
2449
                PD_MODE_SUPPORTED |    /* enable the mode */
 
2450
                IGD_SCAN_INTERLACE |   /* mode info flags */
 
2451
                IGD_VSYNC_HIGH |
 
2452
                PD_MODE_CEA |              /* polarity V+ */
 
2453
                PD_ASPECT_16_9,        /* Aspect ratio 16:9 */
 
2454
                0, 0,                  /* x, y offset */
 
2455
                NULL,                  /* mode extension pointer */
 
2456
                0,                                 /* device dependant */
 
2457
                0                                  /* device dependant */
 
2458
        },
 
2459
#endif
 
2460
        PD_TIMING_TABLE_END
 
2461
};
 
2462
 
 
2463
#ifndef CONFIG_MICRO
 
2464
int cea_timing_table_size = sizeof(cea_timing_table);
 
2465
 
 
2466
/* CEA timings for parsing purpose */
 
2467
type_std_t cea_std_lookup[] =
 
2468
{
 
2469
        {  640,    400,   60,    0 },
 
2470
        {  720,    480,   60,    0 },
 
2471
        {  720,    480,   60,    PD_ASPECT_16_9 },
 
2472
        { 1280,    720,   60,    PD_ASPECT_16_9 },
 
2473
        { 1920,   1080,   60,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2474
        {  720,    480,   60,    PD_SCAN_INTERLACE },
 
2475
        {  720,    480,   60,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2476
        {  720,    240,   60,    0 },
 
2477
 
 
2478
        {  720,    240,   60,    PD_ASPECT_16_9 },
 
2479
        { 2880,    480,   60,    PD_SCAN_INTERLACE },
 
2480
        { 2880,    480,   60,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2481
        { 2880,    240,   60,    0 },
 
2482
        { 2880,    240,   60,    PD_ASPECT_16_9 },
 
2483
        { 1440,    480,   60,    0 },
 
2484
        { 1440,    480,   60,    PD_ASPECT_16_9 },
 
2485
        { 1920,   1080,   60,    PD_ASPECT_16_9 },
 
2486
 
 
2487
        {  720,    576,   50,    0 },
 
2488
        {  720,    576,   50,    PD_ASPECT_16_9 },
 
2489
        { 1280,    720,   50,    PD_ASPECT_16_9 },
 
2490
        { 1920,   1080,   50,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2491
        {  720,    576,   50,    PD_SCAN_INTERLACE },
 
2492
        {  720,    576,   50,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2493
        {  720,    288,   50,    0 },
 
2494
        {  720,    288,   50,    PD_ASPECT_16_9 },
 
2495
 
 
2496
        { 2880,    576,   50,    PD_SCAN_INTERLACE },
 
2497
        { 2880,    576,   50,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2498
        { 2880,    288,   50,    0 },
 
2499
        { 2880,    288,   50,    PD_ASPECT_16_9 },
 
2500
        { 1440,    576,   50,    0 },
 
2501
        { 1440,    576,   50,    PD_ASPECT_16_9 },
 
2502
        { 1920,   1080,   50,    PD_ASPECT_16_9 },
 
2503
        { 1920,   1080,   24,    PD_ASPECT_16_9 },
 
2504
 
 
2505
        { 1920,   1080,   25,    PD_ASPECT_16_9 },
 
2506
        { 1920,   1080,   30,    PD_ASPECT_16_9 },
 
2507
        { 2880,    480,   60,    0 },
 
2508
        { 2880,    480,   60,    PD_ASPECT_16_9 },
 
2509
        { 2880,    576,   50,    0 },
 
2510
        { 2880,    576,   50,    PD_ASPECT_16_9 },
 
2511
        { 1920,   1080,   50,    PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2512
        { 1920,   1080,   100,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2513
 
 
2514
        { 1280,    720,   100,   PD_ASPECT_16_9 },
 
2515
        {  720,    576,   100,   0 },
 
2516
        {  720,    576,   100,   PD_ASPECT_16_9 },
 
2517
        {  720,    576,   100,   PD_SCAN_INTERLACE },
 
2518
        {  720,    576,   100,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2519
        { 1920,   1080,   120,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2520
        { 1280,    720,   120,   PD_ASPECT_16_9 },
 
2521
        {  720,    480,   120,   0 },
 
2522
 
 
2523
        {  720,    480,   120,   PD_ASPECT_16_9 },
 
2524
        {  720,    480,   120,   PD_SCAN_INTERLACE },
 
2525
        {  720,    480,   120,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2526
        {  720,    576,   200,   0 },
 
2527
        {  720,    576,   200,   PD_ASPECT_16_9 },
 
2528
        {  720,    576,   200,   PD_SCAN_INTERLACE },
 
2529
        {  720,    576,   200,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2530
        {  720,    480,   240,   0 },
 
2531
 
 
2532
        {  720,    480,   240,   PD_ASPECT_16_9 },
 
2533
        {  720,    480,   240,   PD_SCAN_INTERLACE },
 
2534
        {  720,    480,   240,   PD_SCAN_INTERLACE | PD_ASPECT_16_9 },
 
2535
        { 1280,    720,   24,    PD_ASPECT_16_9 },
 
2536
        { 1280,    720,   25,    PD_ASPECT_16_9 },
 
2537
        { 1280,    720,   30,    PD_ASPECT_16_9 },
 
2538
};
 
2539
 
 
2540
int cea_std_lookup_size = sizeof(cea_std_lookup)/sizeof(type_std_t);
 
2541
 
 
2542
#endif
 
2543
/*----------------------------------------------------------------------------
 
2544
 * File Revision History
 
2545
 * $Id: mode_table.c,v 1.4 2010/07/23 16:54:50 bpaauwe Exp $
 
2546
 * $Source: /nfs/fm/proj/eia/cvsroot/koheo/linux/egd_drm/emgd/display/pi/cmn/mode_table.c,v $
 
2547
 *----------------------------------------------------------------------------
 
2548
 */
 
2549