aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/ast/ast_tables.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/ast/ast_tables.h')
-rw-r--r--drivers/gpu/drm/ast/ast_tables.h38
1 files changed, 23 insertions, 15 deletions
diff --git a/drivers/gpu/drm/ast/ast_tables.h b/drivers/gpu/drm/ast/ast_tables.h
index 05c01ea85294..3608d5aa7451 100644
--- a/drivers/gpu/drm/ast/ast_tables.h
+++ b/drivers/gpu/drm/ast/ast_tables.h
@@ -35,14 +35,18 @@
35#define HalfDCLK 0x00000002 35#define HalfDCLK 0x00000002
36#define DoubleScanMode 0x00000004 36#define DoubleScanMode 0x00000004
37#define LineCompareOff 0x00000008 37#define LineCompareOff 0x00000008
38#define SyncPP 0x00000000
39#define SyncPN 0x00000040
40#define SyncNP 0x00000080
41#define SyncNN 0x000000C0
42#define HBorder 0x00000020 38#define HBorder 0x00000020
43#define VBorder 0x00000010 39#define VBorder 0x00000010
44#define WideScreenMode 0x00000100 40#define WideScreenMode 0x00000100
45#define NewModeInfo 0x00000200 41#define NewModeInfo 0x00000200
42#define NHSync 0x00000400
43#define PHSync 0x00000800
44#define NVSync 0x00001000
45#define PVSync 0x00002000
46#define SyncPP (PVSync | PHSync)
47#define SyncPN (PVSync | NHSync)
48#define SyncNP (NVSync | PHSync)
49#define SyncNN (NVSync | NHSync)
46 50
47/* DCLK Index */ 51/* DCLK Index */
48#define VCLK25_175 0x00 52#define VCLK25_175 0x00
@@ -72,6 +76,7 @@
72#define VCLK119 0x17 76#define VCLK119 0x17
73#define VCLK85_5 0x18 77#define VCLK85_5 0x18
74#define VCLK97_75 0x19 78#define VCLK97_75 0x19
79#define VCLK118_25 0x1A
75 80
76static struct ast_vbios_dclk_info dclk_table[] = { 81static struct ast_vbios_dclk_info dclk_table[] = {
77 {0x2C, 0xE7, 0x03}, /* 00: VCLK25_175 */ 82 {0x2C, 0xE7, 0x03}, /* 00: VCLK25_175 */
@@ -100,6 +105,7 @@ static struct ast_vbios_dclk_info dclk_table[] = {
100 {0x77, 0x58, 0x80}, /* 17: VCLK119 */ 105 {0x77, 0x58, 0x80}, /* 17: VCLK119 */
101 {0x32, 0x67, 0x80}, /* 18: VCLK85_5 */ 106 {0x32, 0x67, 0x80}, /* 18: VCLK85_5 */
102 {0x6a, 0x6d, 0x80}, /* 19: VCLK97_75 */ 107 {0x6a, 0x6d, 0x80}, /* 19: VCLK97_75 */
108 {0x3b, 0x2c, 0x81}, /* 1A: VCLK118_25 */
103}; 109};
104 110
105static struct ast_vbios_stdtable vbios_stdtable[] = { 111static struct ast_vbios_stdtable vbios_stdtable[] = {
@@ -246,8 +252,10 @@ static struct ast_vbios_enhtable res_1360x768[] = {
246static struct ast_vbios_enhtable res_1600x900[] = { 252static struct ast_vbios_enhtable res_1600x900[] = {
247 {1760, 1600, 48, 32, 926, 900, 3, 5, VCLK97_75, /* 60Hz CVT RB */ 253 {1760, 1600, 48, 32, 926, 900, 3, 5, VCLK97_75, /* 60Hz CVT RB */
248 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x3A }, 254 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x3A },
249 {1760, 1600, 48, 32, 926, 900, 3, 5, VCLK97_75, /* end */ 255 {2112, 1600, 88,168, 934, 900, 3, 5, VCLK118_25, /* 60Hz CVT */
250 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x3A } 256 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 2, 0x3A },
257 {2112, 1600, 88,168, 934, 900, 3, 5, VCLK118_25, /* 60Hz CVT */
258 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 2, 0x3A },
251}; 259};
252 260
253static struct ast_vbios_enhtable res_1920x1080[] = { 261static struct ast_vbios_enhtable res_1920x1080[] = {
@@ -261,11 +269,11 @@ static struct ast_vbios_enhtable res_1920x1080[] = {
261/* 16:10 */ 269/* 16:10 */
262static struct ast_vbios_enhtable res_1280x800[] = { 270static struct ast_vbios_enhtable res_1280x800[] = {
263 {1440, 1280, 48, 32, 823, 800, 3, 6, VCLK71, /* 60Hz RB */ 271 {1440, 1280, 48, 32, 823, 800, 3, 6, VCLK71, /* 60Hz RB */
264 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 35 }, 272 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x35 },
265 {1680, 1280, 72,128, 831, 800, 3, 6, VCLK83_5, /* 60Hz */ 273 {1680, 1280, 72,128, 831, 800, 3, 6, VCLK83_5, /* 60Hz */
266 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x35 }, 274 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 2, 0x35 },
267 {1680, 1280, 72,128, 831, 800, 3, 6, VCLK83_5, /* 60Hz */ 275 {1680, 1280, 72,128, 831, 800, 3, 6, VCLK83_5, /* 60Hz */
268 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x35 }, 276 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 2, 0x35 },
269 277
270}; 278};
271 279
@@ -273,24 +281,24 @@ static struct ast_vbios_enhtable res_1440x900[] = {
273 {1600, 1440, 48, 32, 926, 900, 3, 6, VCLK88_75, /* 60Hz RB */ 281 {1600, 1440, 48, 32, 926, 900, 3, 6, VCLK88_75, /* 60Hz RB */
274 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x36 }, 282 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x36 },
275 {1904, 1440, 80,152, 934, 900, 3, 6, VCLK106_5, /* 60Hz */ 283 {1904, 1440, 80,152, 934, 900, 3, 6, VCLK106_5, /* 60Hz */
276 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x36 }, 284 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 2, 0x36 },
277 {1904, 1440, 80,152, 934, 900, 3, 6, VCLK106_5, /* 60Hz */ 285 {1904, 1440, 80,152, 934, 900, 3, 6, VCLK106_5, /* 60Hz */
278 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x36 }, 286 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 2, 0x36 },
279}; 287};
280 288
281static struct ast_vbios_enhtable res_1680x1050[] = { 289static struct ast_vbios_enhtable res_1680x1050[] = {
282 {1840, 1680, 48, 32, 1080, 1050, 3, 6, VCLK119, /* 60Hz RB */ 290 {1840, 1680, 48, 32, 1080, 1050, 3, 6, VCLK119, /* 60Hz RB */
283 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x37 }, 291 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x37 },
284 {2240, 1680,104,176, 1089, 1050, 3, 6, VCLK146_25, /* 60Hz */ 292 {2240, 1680,104,176, 1089, 1050, 3, 6, VCLK146_25, /* 60Hz */
285 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x37 }, 293 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 2, 0x37 },
286 {2240, 1680,104,176, 1089, 1050, 3, 6, VCLK146_25, /* 60Hz */ 294 {2240, 1680,104,176, 1089, 1050, 3, 6, VCLK146_25, /* 60Hz */
287 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x37 }, 295 (SyncPN | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 2, 0x37 },
288}; 296};
289 297
290static struct ast_vbios_enhtable res_1920x1200[] = { 298static struct ast_vbios_enhtable res_1920x1200[] = {
291 {2080, 1920, 48, 32, 1235, 1200, 3, 6, VCLK154, /* 60Hz */ 299 {2080, 1920, 48, 32, 1235, 1200, 3, 6, VCLK154, /* 60Hz RB*/
292 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x34 }, 300 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 60, 1, 0x34 },
293 {2080, 1920, 48, 32, 1235, 1200, 3, 6, VCLK154, /* 60Hz */ 301 {2080, 1920, 48, 32, 1235, 1200, 3, 6, VCLK154, /* 60Hz RB */
294 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x34 }, 302 (SyncNP | Charx8Dot | LineCompareOff | WideScreenMode | NewModeInfo), 0xFF, 1, 0x34 },
295}; 303};
296 304