]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blob - drivers/staging/xgifb/vb_struct.h
Input: wm97xx: add new AC97 bus support
[mirror_ubuntu-focal-kernel.git] / drivers / staging / xgifb / vb_struct.h
1 #ifndef _VB_STRUCT_
2 #define _VB_STRUCT_
3 #include "../../video/fbdev/sis/vstruct.h"
4
5 struct XGI_LVDSCRT1HDataStruct {
6 unsigned char Reg[8];
7 };
8
9 struct XGI_LVDSCRT1VDataStruct {
10 unsigned char Reg[7];
11 };
12
13 struct XGI_ExtStruct {
14 unsigned char Ext_ModeID;
15 unsigned short Ext_ModeFlag;
16 unsigned short Ext_ModeInfo;
17 unsigned char Ext_RESINFO;
18 unsigned char VB_ExtTVYFilterIndex;
19 unsigned char REFindex;
20 };
21
22 struct XGI_Ext2Struct {
23 unsigned short Ext_InfoFlag;
24 unsigned char Ext_CRT1CRTC;
25 unsigned char Ext_CRTVCLK;
26 unsigned char Ext_CRT2CRTC;
27 unsigned char Ext_CRT2CRTC2;
28 unsigned char ModeID;
29 unsigned short XRes;
30 unsigned short YRes;
31 };
32
33 struct XGI_ECLKDataStruct {
34 unsigned char SR2E, SR2F, SR30;
35 unsigned short CLOCK;
36 };
37
38 /*add for new UNIVGABIOS*/
39 struct XGI_LCDDesStruct {
40 unsigned short LCDHDES;
41 unsigned short LCDHRS;
42 unsigned short LCDVDES;
43 unsigned short LCDVRS;
44 };
45
46 struct XGI330_LCDDataDesStruct2 {
47 unsigned short LCDHDES;
48 unsigned short LCDHRS;
49 unsigned short LCDVDES;
50 unsigned short LCDVRS;
51 unsigned short LCDHSync;
52 unsigned short LCDVSync;
53 };
54
55 struct XGI330_LCDDataTablStruct {
56 unsigned char PANELID;
57 unsigned short MASK;
58 unsigned short CAP;
59 void const *DATAPTR;
60 };
61
62 struct XGI330_TVDataTablStruct {
63 unsigned short MASK;
64 unsigned short CAP;
65 struct SiS_TVData const *DATAPTR;
66 };
67
68 struct XGI_TimingHStruct {
69 unsigned char data[8];
70 };
71
72 struct XGI_TimingVStruct {
73 unsigned char data[7];
74 };
75
76 struct XGI_XG21CRT1Struct {
77 unsigned char ModeID, CR02, CR03, CR15, CR16;
78 };
79
80 struct XGI330_LCDCapStruct {
81 unsigned char LCD_ID;
82 unsigned short LCD_Capability;
83 unsigned char LCD_HSyncWidth;
84 unsigned char LCD_VSyncWidth;
85 unsigned char LCD_VCLK;
86 unsigned char LCDA_VCLKData1;
87 unsigned char LCDA_VCLKData2;
88 unsigned char LCUCHAR_VCLKData1;
89 unsigned char LCUCHAR_VCLKData2;
90 unsigned char Spectrum_31;
91 unsigned char Spectrum_32;
92 unsigned char Spectrum_33;
93 unsigned char Spectrum_34;
94 };
95
96 struct XGI21_LVDSCapStruct {
97 unsigned short LVDS_Capability;
98 unsigned short LVDSHT;
99 unsigned short LVDSVT;
100 unsigned short LVDSHDE;
101 unsigned short LVDSVDE;
102 unsigned short LVDSHFP;
103 unsigned short LVDSVFP;
104 unsigned short LVDSHSYNC;
105 unsigned short LVDSVSYNC;
106 unsigned char VCLKData1;
107 unsigned char VCLKData2;
108 unsigned char PSC_S1; /* Duration between CPL on and signal on */
109 unsigned char PSC_S2; /* Duration signal on and Vdd on */
110 unsigned char PSC_S3; /* Duration between CPL off and signal off */
111 unsigned char PSC_S4; /* Duration signal off and Vdd off */
112 unsigned char PSC_S5;
113 };
114
115 struct XGI_CRT1TableStruct {
116 unsigned char CR[16];
117 };
118
119 struct XGI301C_Tap4TimingStruct {
120 unsigned short DE;
121 unsigned char Reg[64]; /* C0-FF */
122 };
123
124 struct vb_device_info {
125 unsigned long P3c4, P3d4, P3c0, P3ce, P3c2, P3cc;
126 unsigned long P3ca, P3c6, P3c7, P3c8, P3c9, P3da;
127 unsigned long Part0Port, Part1Port, Part2Port;
128 unsigned long Part3Port, Part4Port, Part5Port;
129 unsigned short RVBHCFACT, RVBHCMAX, RVBHRS;
130 unsigned short VGAVT, VGAHT, VGAVDE, VGAHDE;
131 unsigned short VT, HT, VDE, HDE;
132 unsigned short LCDHRS, LCDVRS, LCDHDES, LCDVDES;
133
134 unsigned short ModeType;
135 unsigned short IF_DEF_LVDS;
136 unsigned short IF_DEF_CRT2Monitor;
137 unsigned short IF_DEF_YPbPr;
138 unsigned short IF_DEF_HiVision;
139 unsigned short LCDResInfo, LCDTypeInfo, VBType;/*301b*/
140 unsigned short VBInfo, TVInfo, LCDInfo;
141 unsigned short SetFlag;
142 unsigned short NewFlickerMode;
143 unsigned short SelectCRT2Rate;
144
145 void __iomem *FBAddr;
146
147 unsigned char const *SR18;
148 unsigned char const (*CR40)[3];
149
150 struct SiS_MCLKData const *MCLKData;
151
152 unsigned char XGINew_CR97;
153
154 struct XGI330_LCDCapStruct const *LCDCapList;
155
156 struct XGI_TimingHStruct TimingH;
157 struct XGI_TimingVStruct TimingV;
158
159 int ram_type;
160 int ram_channel;
161 int ram_bus;
162 }; /* _struct vb_device_info */
163
164 #endif /* _VB_STRUCT_ */