2 * This file is part of the coreboot project.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 2 of the License.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
14 /* File taken from the Linux xgifb driver (v3.18.5) */
19 struct XGI_LVDSCRT1HDataStruct
{
23 struct XGI_LVDSCRT1VDataStruct
{
27 struct XGI_ExtStruct
{
28 unsigned char Ext_ModeID
;
29 unsigned short Ext_ModeFlag
;
30 unsigned short Ext_ModeInfo
;
31 unsigned char Ext_RESINFO
;
32 unsigned char VB_ExtTVYFilterIndex
;
33 unsigned char REFindex
;
36 struct XGI_Ext2Struct
{
37 unsigned short Ext_InfoFlag
;
38 unsigned char Ext_CRT1CRTC
;
39 unsigned char Ext_CRTVCLK
;
40 unsigned char Ext_CRT2CRTC
;
41 unsigned char Ext_CRT2CRTC2
;
47 struct XGI_ECLKDataStruct
{
48 unsigned char SR2E
, SR2F
, SR30
;
52 /*add for new UNIVGABIOS*/
53 struct XGI_LCDDesStruct
{
54 unsigned short LCDHDES
;
55 unsigned short LCDHRS
;
56 unsigned short LCDVDES
;
57 unsigned short LCDVRS
;
60 struct XGI330_LCDDataDesStruct2
{
61 unsigned short LCDHDES
;
62 unsigned short LCDHRS
;
63 unsigned short LCDVDES
;
64 unsigned short LCDVRS
;
65 unsigned short LCDHSync
;
66 unsigned short LCDVSync
;
69 struct XGI330_LCDDataTablStruct
{
70 unsigned char PANELID
;
76 struct XGI330_TVDataTablStruct
{
79 struct SiS_TVData
const *DATAPTR
;
83 struct XGI_TimingHStruct
{
84 unsigned char data
[8];
87 struct XGI_TimingVStruct
{
88 unsigned char data
[7];
91 struct XGI_XG21CRT1Struct
{
92 unsigned char ModeID
, CR02
, CR03
, CR15
, CR16
;
95 struct XGI330_LCDCapStruct
{
97 unsigned short LCD_Capability
;
98 unsigned char LCD_HSyncWidth
;
99 unsigned char LCD_VSyncWidth
;
100 unsigned char LCD_VCLK
;
101 unsigned char LCDA_VCLKData1
;
102 unsigned char LCDA_VCLKData2
;
103 unsigned char LCUCHAR_VCLKData1
;
104 unsigned char LCUCHAR_VCLKData2
;
105 unsigned char Spectrum_31
;
106 unsigned char Spectrum_32
;
107 unsigned char Spectrum_33
;
108 unsigned char Spectrum_34
;
111 struct XGI21_LVDSCapStruct
{
112 unsigned short LVDS_Capability
;
113 unsigned short LVDSHT
;
114 unsigned short LVDSVT
;
115 unsigned short LVDSHDE
;
116 unsigned short LVDSVDE
;
117 unsigned short LVDSHFP
;
118 unsigned short LVDSVFP
;
119 unsigned short LVDSHSYNC
;
120 unsigned short LVDSVSYNC
;
121 unsigned char VCLKData1
;
122 unsigned char VCLKData2
;
123 unsigned char PSC_S1
; /* Duration between CPL on and signal on */
124 unsigned char PSC_S2
; /* Duration signal on and Vdd on */
125 unsigned char PSC_S3
; /* Duration between CPL off and signal off */
126 unsigned char PSC_S4
; /* Duration signal off and Vdd off */
127 unsigned char PSC_S5
;
130 struct XGI_CRT1TableStruct
{
131 unsigned char CR
[16];
135 struct XGI301C_Tap4TimingStruct
{
137 unsigned char Reg
[64]; /* C0-FF */
140 struct vb_device_info
{
141 unsigned long P3c4
, P3d4
, P3c0
, P3ce
, P3c2
, P3cc
;
142 unsigned long P3ca
, P3c6
, P3c7
, P3c8
, P3c9
, P3da
;
143 unsigned long Part0Port
, Part1Port
, Part2Port
;
144 unsigned long Part3Port
, Part4Port
, Part5Port
;
145 unsigned short RVBHCFACT
, RVBHCMAX
, RVBHRS
;
146 unsigned short VGAVT
, VGAHT
, VGAVDE
, VGAHDE
;
147 unsigned short VT
, HT
, VDE
, HDE
;
148 unsigned short LCDHRS
, LCDVRS
, LCDHDES
, LCDVDES
;
150 unsigned short ModeType
;
151 unsigned short IF_DEF_LVDS
;
152 unsigned short IF_DEF_CRT2Monitor
;
153 unsigned short IF_DEF_YPbPr
;
154 unsigned short IF_DEF_HiVision
;
155 unsigned short LCDResInfo
, LCDTypeInfo
, VBType
;/*301b*/
156 unsigned short VBInfo
, TVInfo
, LCDInfo
;
157 unsigned short SetFlag
;
158 unsigned short NewFlickerMode
;
159 unsigned short SelectCRT2Rate
;
161 void __iomem
*FBAddr
;
163 unsigned char const *SR18
;
164 unsigned char const (*CR40
)[3];
166 struct SiS_MCLKData
const *MCLKData
;
168 unsigned char XGINew_CR97
;
170 struct XGI330_LCDCapStruct
const *LCDCapList
;
172 struct XGI_TimingHStruct TimingH
;
173 struct XGI_TimingVStruct TimingV
;
178 }; /* _struct vb_device_info */
180 #endif /* _VB_STRUCT_ */