xref: /linux/drivers/video/fbdev/via/tblDPASetting.c (revision f7018c21350204c4cf628462f229d44d03545254)
1*f7018c21STomi Valkeinen /*
2*f7018c21STomi Valkeinen  * Copyright 1998-2008 VIA Technologies, Inc. All Rights Reserved.
3*f7018c21STomi Valkeinen  * Copyright 2001-2008 S3 Graphics, Inc. All Rights Reserved.
4*f7018c21STomi Valkeinen 
5*f7018c21STomi Valkeinen  * This program is free software; you can redistribute it and/or
6*f7018c21STomi Valkeinen  * modify it under the terms of the GNU General Public
7*f7018c21STomi Valkeinen  * License as published by the Free Software Foundation;
8*f7018c21STomi Valkeinen  * either version 2, or (at your option) any later version.
9*f7018c21STomi Valkeinen 
10*f7018c21STomi Valkeinen  * This program is distributed in the hope that it will be useful,
11*f7018c21STomi Valkeinen  * but WITHOUT ANY WARRANTIES OR REPRESENTATIONS; without even
12*f7018c21STomi Valkeinen  * the implied warranty of MERCHANTABILITY or FITNESS FOR
13*f7018c21STomi Valkeinen  * A PARTICULAR PURPOSE.See the GNU General Public License
14*f7018c21STomi Valkeinen  * for more details.
15*f7018c21STomi Valkeinen 
16*f7018c21STomi Valkeinen  * You should have received a copy of the GNU General Public License
17*f7018c21STomi Valkeinen  * along with this program; if not, write to the Free Software
18*f7018c21STomi Valkeinen  * Foundation, Inc.,
19*f7018c21STomi Valkeinen  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20*f7018c21STomi Valkeinen  */
21*f7018c21STomi Valkeinen 
22*f7018c21STomi Valkeinen #include "global.h"
23*f7018c21STomi Valkeinen 
24*f7018c21STomi Valkeinen struct GFX_DPA_SETTING GFX_DPA_SETTING_TBL_VT3324[] = {
25*f7018c21STomi Valkeinen /*  ClkRange, DVP0, DVP0DataDriving,  DVP0ClockDriving, DVP1,
26*f7018c21STomi Valkeinen 					DVP1Driving, DFPHigh, DFPLow */
27*f7018c21STomi Valkeinen /*  CR96, SR2A[5], SR1B[1], SR2A[4], SR1E[2], CR9B,
28*f7018c21STomi Valkeinen 					SR65,        CR97,    CR99   */
29*f7018c21STomi Valkeinen 	/* LCK/VCK < 30000000 will use this value */
30*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_30M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
31*f7018c21STomi Valkeinen 	 0x00},
32*f7018c21STomi Valkeinen 	/* 30000000 < LCK/VCK < 50000000 will use this value */
33*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_30_50M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
34*f7018c21STomi Valkeinen 	 0x00},
35*f7018c21STomi Valkeinen 	/* 50000000 < LCK/VCK < 70000000 will use this value */
36*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_50_70M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
37*f7018c21STomi Valkeinen 	 0x00},
38*f7018c21STomi Valkeinen 	/* 70000000 < LCK/VCK < 100000000 will use this value */
39*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_70_100M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
40*f7018c21STomi Valkeinen 	 0x00},
41*f7018c21STomi Valkeinen 	/* 100000000 < LCK/VCK < 15000000 will use this value */
42*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_100_150M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
43*f7018c21STomi Valkeinen 	 0x00},
44*f7018c21STomi Valkeinen 	/* 15000000 < LCK/VCK will use this value */
45*f7018c21STomi Valkeinen 	{DPA_CLK_RANGE_150M, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0E, 0x00,
46*f7018c21STomi Valkeinen 	 0x00},
47*f7018c21STomi Valkeinen };
48*f7018c21STomi Valkeinen 
49*f7018c21STomi Valkeinen struct GFX_DPA_SETTING GFX_DPA_SETTING_TBL_VT3327[] = {
50*f7018c21STomi Valkeinen /*  ClkRange,DVP0, DVP0DataDriving,  DVP0ClockDriving, DVP1,
51*f7018c21STomi Valkeinen 					DVP1Driving, DFPHigh,   DFPLow */
52*f7018c21STomi Valkeinen /*   CR96, SR2A[5], SR1B[1], SR2A[4], SR1E[2], CR9B,
53*f7018c21STomi Valkeinen 					SR65,        CR97,      CR99   */
54*f7018c21STomi Valkeinen /* LCK/VCK < 30000000 will use this value */
55*f7018c21STomi Valkeinen {DPA_CLK_RANGE_30M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x08, 0x01},
56*f7018c21STomi Valkeinen /* 30000000 < LCK/VCK < 50000000 will use this value */
57*f7018c21STomi Valkeinen {DPA_CLK_RANGE_30_50M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x08, 0x01},
58*f7018c21STomi Valkeinen /* 50000000 < LCK/VCK < 70000000 will use this value */
59*f7018c21STomi Valkeinen {DPA_CLK_RANGE_50_70M, 0x06, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x08, 0x01},
60*f7018c21STomi Valkeinen /* 70000000 < LCK/VCK < 100000000 will use this value */
61*f7018c21STomi Valkeinen {DPA_CLK_RANGE_70_100M, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x08, 0x03},
62*f7018c21STomi Valkeinen /* 100000000 < LCK/VCK < 15000000 will use this value */
63*f7018c21STomi Valkeinen {DPA_CLK_RANGE_100_150M, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x02},
64*f7018c21STomi Valkeinen /* 15000000 < LCK/VCK will use this value */
65*f7018c21STomi Valkeinen {DPA_CLK_RANGE_150M, 0x00, 0x20, 0x00, 0x10, 0x00, 0x03, 0x00, 0x0D, 0x03},
66*f7018c21STomi Valkeinen };
67*f7018c21STomi Valkeinen 
68*f7018c21STomi Valkeinen /* For VT3364: */
69*f7018c21STomi Valkeinen struct GFX_DPA_SETTING GFX_DPA_SETTING_TBL_VT3364[] = {
70*f7018c21STomi Valkeinen /*  ClkRange,DVP0, DVP0DataDriving,  DVP0ClockDriving, DVP1,
71*f7018c21STomi Valkeinen 					DVP1Driving, DFPHigh,   DFPLow */
72*f7018c21STomi Valkeinen /*   CR96, SR2A[5], SR1B[1], SR2A[4], SR1E[2], CR9B,
73*f7018c21STomi Valkeinen 					SR65,        CR97,      CR99   */
74*f7018c21STomi Valkeinen /* LCK/VCK < 30000000 will use this value */
75*f7018c21STomi Valkeinen {DPA_CLK_RANGE_30M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08},
76*f7018c21STomi Valkeinen /* 30000000 < LCK/VCK < 50000000 will use this value */
77*f7018c21STomi Valkeinen {DPA_CLK_RANGE_30_50M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08},
78*f7018c21STomi Valkeinen /* 50000000 < LCK/VCK < 70000000 will use this value */
79*f7018c21STomi Valkeinen {DPA_CLK_RANGE_50_70M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08},
80*f7018c21STomi Valkeinen /* 70000000 < LCK/VCK < 100000000 will use this value */
81*f7018c21STomi Valkeinen {DPA_CLK_RANGE_70_100M, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08},
82*f7018c21STomi Valkeinen /* 100000000 < LCK/VCK < 15000000 will use this value */
83*f7018c21STomi Valkeinen {DPA_CLK_RANGE_100_150M, 0x03, 0x00, 0x02, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08},
84*f7018c21STomi Valkeinen /* 15000000 < LCK/VCK will use this value */
85*f7018c21STomi Valkeinen {DPA_CLK_RANGE_150M, 0x01, 0x00, 0x02, 0x10, 0x00, 0x03, 0x00, 0x00, 0x08},
86*f7018c21STomi Valkeinen };
87