aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/ast/ast_tables.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-10-14 03:39:08 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-14 03:39:08 -0400
commit2d65a9f48fcdf7866aab6457bc707ca233e0c791 (patch)
treef93e5838d6ac2e59434367f4ff905f7d9c45fc2b /drivers/gpu/drm/ast/ast_tables.h
parentda92da3638a04894afdca8b99e973ddd20268471 (diff)
parentdfda0df3426483cf5fc7441f23f318edbabecb03 (diff)
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie: "This is the main git pull for the drm, I pretty much froze major pulls at -rc5/6 time, and haven't had much fallout, so will probably continue doing that. Lots of changes all over, big internal header cleanup to make it clear drm features are legacy things and what are things that modern KMS drivers should be using. Also big move to use the new generic fences in all the TTM drivers. core: atomic prep work, vblank rework changes, allows immediate vblank disables major header reworking and cleanups to better delinate legacy interfaces from what KMS drivers should be using. cursor planes locking fixes ttm: move to generic fences (affects all TTM drivers) ppc64 caching fixes radeon: userptr support, uvd for old asics, reset rework for fence changes better buffer placement changes, dpm feature enablement hdmi audio support fixes intel: Cherryview work, 180 degree rotation, skylake prep work, execlist command submission full ppgtt prep work cursor improvements edid caching, vdd handling improvements nouveau: fence reworking kepler memory clock work gt21x clock work fan control improvements hdmi infoframe fixes DP audio ast: ppc64 fixes caching fix rcar: rcar-du DT support ipuv3: prep work for capture support msm: LVDS support for mdp4, new panel, gpu refactoring exynos: exynos3250 SoC support, drop bad mmap interface, mipi dsi changes, and component match support" * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (640 commits) drm/mst: rework payload table allocation to conform better. drm/ast: Fix HW cursor image drm/radeon/kv: add uvd/vce info to dpm debugfs output drm/radeon/ci: add uvd/vce info to dpm debugfs output drm/radeon: export reservation_object from dmabuf to ttm drm/radeon: cope with foreign fences inside the reservation object drm/radeon: cope with foreign fences inside display drm/core: use helper to check driver features drm/radeon/cik: write gfx ucode version to ucode addr reg drm/radeon/si: print full CS when we hit a packet 0 drm/radeon: remove unecessary includes drm/radeon/combios: declare legacy_connector_convert as static drm/radeon/atombios: declare connector convert tables as static drm/radeon: drop btc_get_max_clock_from_voltage_dependency_table drm/radeon/dpm: drop clk/voltage dependency filters for BTC drm/radeon/dpm: drop clk/voltage dependency filters for CI drm/radeon/dpm: drop clk/voltage dependency filters for SI drm/radeon/dpm: drop clk/voltage dependency filters for NI drm/radeon: disable audio when we disable hdmi (v2) drm/radeon: split audio enable between eg and r600 (v2) ...
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