sb/amd/{agesa,pi}/hudson: Explicitly enable LPC controller
[coreboot.git] / src / drivers / xgi / common / vb_struct.h
blob705a1aed59d884f8b5eb4e83fcddea4cecec54d4
1 /*
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) */
16 #ifndef _VB_STRUCT_
17 #define _VB_STRUCT_
19 struct XGI_LVDSCRT1HDataStruct {
20 unsigned char Reg[8];
23 struct XGI_LVDSCRT1VDataStruct {
24 unsigned char Reg[7];
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;
42 unsigned char ModeID;
43 unsigned short XRes;
44 unsigned short YRes;
47 struct XGI_ECLKDataStruct {
48 unsigned char SR2E, SR2F, SR30;
49 unsigned short CLOCK;
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;
71 unsigned short MASK;
72 unsigned short CAP;
73 void const *DATAPTR;
76 struct XGI330_TVDataTablStruct {
77 unsigned short MASK;
78 unsigned short CAP;
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 {
96 unsigned char LCD_ID;
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 {
136 unsigned short DE;
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;
175 int ram_type;
176 int ram_channel;
177 int ram_bus;
178 }; /* _struct vb_device_info */
180 #endif /* _VB_STRUCT_ */