blob: c08ff5b2d6ee055dbca9092c9d6475bcb5375b6e [file] [log] [blame]
apatard@mandriva.comd7636e02010-05-19 10:44:14 +02001#ifndef _VB_STRUCT_
2#define _VB_STRUCT_
Peter Hueweb33704d2012-01-15 19:22:11 +01003#include "../../video/sis/vstruct.h"
apatard@mandriva.comd7636e02010-05-19 10:44:14 +02004
Kenji Toyama918122e2011-04-23 21:54:07 +08005struct XGI_LVDSCRT1HDataStruct {
6 unsigned char Reg[8];
Bill Pemberton80adad82010-06-17 13:10:51 -04007};
8
Kenji Toyama918122e2011-04-23 21:54:07 +08009struct XGI_LVDSCRT1VDataStruct {
10 unsigned char Reg[7];
Bill Pemberton80adad82010-06-17 13:10:51 -040011};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020012
Kenji Toyama918122e2011-04-23 21:54:07 +080013struct XGI_ExtStruct {
14 unsigned char Ext_ModeID;
15 unsigned short Ext_ModeFlag;
16 unsigned short Ext_ModeInfo;
Kenji Toyama918122e2011-04-23 21:54:07 +080017 unsigned char Ext_RESINFO;
Kenji Toyama918122e2011-04-23 21:54:07 +080018 unsigned char VB_ExtTVYFilterIndex;
19 unsigned char REFindex;
Bill Pemberton80adad82010-06-17 13:10:51 -040020};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020021
Kenji Toyama918122e2011-04-23 21:54:07 +080022struct 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;
Bill Pemberton80adad82010-06-17 13:10:51 -040031};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020032
Kenji Toyama918122e2011-04-23 21:54:07 +080033struct XGI_ECLKDataStruct {
34 unsigned char SR2E, SR2F, SR30;
35 unsigned short CLOCK;
Bill Pemberton80adad82010-06-17 13:10:51 -040036};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020037
Kenji Toyama918122e2011-04-23 21:54:07 +080038/*add for new UNIVGABIOS*/
39struct XGI_LCDDesStruct {
40 unsigned short LCDHDES;
41 unsigned short LCDHRS;
42 unsigned short LCDVDES;
43 unsigned short LCDVRS;
Bill Pemberton80adad82010-06-17 13:10:51 -040044};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020045
Kenji Toyama918122e2011-04-23 21:54:07 +080046struct 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;
Bill Pemberton80adad82010-06-17 13:10:51 -040053};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020054
Kenji Toyama918122e2011-04-23 21:54:07 +080055struct XGI330_LCDDataTablStruct {
56 unsigned char PANELID;
57 unsigned short MASK;
58 unsigned short CAP;
Aaro Koskinenbdc9eb12012-11-04 21:14:47 +020059 void const *DATAPTR;
Bill Pemberton80adad82010-06-17 13:10:51 -040060};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020061
Kenji Toyama918122e2011-04-23 21:54:07 +080062struct XGI330_TVDataTablStruct {
63 unsigned short MASK;
64 unsigned short CAP;
Aaro Koskinen18ba8662012-09-11 00:15:22 +030065 struct SiS_TVData const *DATAPTR;
Bill Pemberton80adad82010-06-17 13:10:51 -040066};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020067
68
Kenji Toyama918122e2011-04-23 21:54:07 +080069struct XGI_TimingHStruct {
70 unsigned char data[8];
Bill Pemberton80adad82010-06-17 13:10:51 -040071};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020072
Kenji Toyama918122e2011-04-23 21:54:07 +080073struct XGI_TimingVStruct {
74 unsigned char data[7];
Bill Pemberton80adad82010-06-17 13:10:51 -040075};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020076
Kenji Toyama918122e2011-04-23 21:54:07 +080077struct XGI_XG21CRT1Struct {
78 unsigned char ModeID, CR02, CR03, CR15, CR16;
Bill Pemberton80adad82010-06-17 13:10:51 -040079};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020080
Kenji Toyama918122e2011-04-23 21:54:07 +080081struct XGI330_LCDCapStruct {
82 unsigned char LCD_ID;
83 unsigned short LCD_Capability;
Kenji Toyama918122e2011-04-23 21:54:07 +080084 unsigned char LCD_HSyncWidth;
85 unsigned char LCD_VSyncWidth;
86 unsigned char LCD_VCLK;
87 unsigned char LCDA_VCLKData1;
88 unsigned char LCDA_VCLKData2;
89 unsigned char LCUCHAR_VCLKData1;
90 unsigned char LCUCHAR_VCLKData2;
Kenji Toyama918122e2011-04-23 21:54:07 +080091 unsigned char Spectrum_31;
92 unsigned char Spectrum_32;
93 unsigned char Spectrum_33;
94 unsigned char Spectrum_34;
Bill Pemberton80adad82010-06-17 13:10:51 -040095};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +020096
Kenji Toyama918122e2011-04-23 21:54:07 +080097struct XGI21_LVDSCapStruct {
98 unsigned short LVDS_Capability;
99 unsigned short LVDSHT;
100 unsigned short LVDSVT;
101 unsigned short LVDSHDE;
102 unsigned short LVDSVDE;
103 unsigned short LVDSHFP;
104 unsigned short LVDSVFP;
105 unsigned short LVDSHSYNC;
106 unsigned short LVDSVSYNC;
107 unsigned char VCLKData1;
108 unsigned char VCLKData2;
Aaro Koskinen2fd002b2012-09-11 00:15:12 +0300109 unsigned char PSC_S1; /* Duration between CPL on and signal on */
110 unsigned char PSC_S2; /* Duration signal on and Vdd on */
111 unsigned char PSC_S3; /* Duration between CPL off and signal off */
112 unsigned char PSC_S4; /* Duration signal off and Vdd off */
Kenji Toyama918122e2011-04-23 21:54:07 +0800113 unsigned char PSC_S5;
Bill Pemberton80adad82010-06-17 13:10:51 -0400114};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200115
Kenji Toyama918122e2011-04-23 21:54:07 +0800116struct XGI_CRT1TableStruct {
117 unsigned char CR[16];
Bill Pemberton80adad82010-06-17 13:10:51 -0400118};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200119
120
Kenji Toyama918122e2011-04-23 21:54:07 +0800121struct XGI301C_Tap4TimingStruct {
122 unsigned short DE;
123 unsigned char Reg[64]; /* C0-FF */
Bill Pemberton80adad82010-06-17 13:10:51 -0400124};
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200125
Kenji Toyama918122e2011-04-23 21:54:07 +0800126struct vb_device_info {
Kenji Toyama918122e2011-04-23 21:54:07 +0800127 unsigned long P3c4, P3d4, P3c0, P3ce, P3c2, P3cc;
128 unsigned long P3ca, P3c6, P3c7, P3c8, P3c9, P3da;
129 unsigned long Part0Port, Part1Port, Part2Port;
130 unsigned long Part3Port, Part4Port, Part5Port;
131 unsigned short RVBHCFACT, RVBHCMAX, RVBHRS;
132 unsigned short VGAVT, VGAHT, VGAVDE, VGAHDE;
133 unsigned short VT, HT, VDE, HDE;
134 unsigned short LCDHRS, LCDVRS, LCDHDES, LCDVDES;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200135
Kenji Toyama918122e2011-04-23 21:54:07 +0800136 unsigned short ModeType;
Aaro Koskinen84a0b9b2013-03-27 23:53:08 +0200137 unsigned short IF_DEF_LVDS;
Aaro Koskinend2de85c2011-08-31 21:46:11 +0300138 unsigned short IF_DEF_CRT2Monitor;
Aaro Koskinen31fb40f2012-09-11 00:15:15 +0300139 unsigned short IF_DEF_YPbPr;
Aaro Koskinen4c14bfd2011-08-31 21:45:57 +0300140 unsigned short IF_DEF_HiVision;
Kenji Toyama918122e2011-04-23 21:54:07 +0800141 unsigned short LCDResInfo, LCDTypeInfo, VBType;/*301b*/
Aaro Koskinen9ffc7e92011-11-27 23:03:14 +0200142 unsigned short VBInfo, TVInfo, LCDInfo;
Kenji Toyama918122e2011-04-23 21:54:07 +0800143 unsigned short SetFlag;
144 unsigned short NewFlickerMode;
145 unsigned short SelectCRT2Rate;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200146
Aaro Koskinenc44fa622011-09-13 22:49:33 +0300147 void __iomem *FBAddr;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200148
Aaro Koskinen597d96b2013-03-27 23:53:15 +0200149 unsigned char const *SR18;
Peter Huewe87be0af2013-02-05 22:32:29 +0100150 unsigned char const (*CR40)[3];
Bill Pemberton80adad82010-06-17 13:10:51 -0400151
Aaro Koskinena68292f2012-11-04 21:15:07 +0200152 struct SiS_MCLKData const *MCLKData;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200153
Peter Huewe6d12dae2012-06-14 00:21:52 +0200154 unsigned char XGINew_CR97;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200155
Aaro Koskinenbdc9eb12012-11-04 21:14:47 +0200156 struct XGI330_LCDCapStruct const *LCDCapList;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200157
Aaro Koskinen6154e7f2012-11-04 21:14:50 +0200158 struct XGI_TimingHStruct TimingH;
159 struct XGI_TimingVStruct TimingV;
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200160
Aaro Koskinen2af1a292011-10-11 21:47:31 +0300161 int ram_type;
Aaro Koskinenee055a42011-10-11 21:47:32 +0300162 int ram_channel;
Aaro Koskinen2f0f3952011-10-11 21:47:33 +0300163 int ram_bus;
Bill Pemberton80adad82010-06-17 13:10:51 -0400164}; /* _struct vb_device_info */
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200165
apatard@mandriva.comd7636e02010-05-19 10:44:14 +0200166#endif /* _VB_STRUCT_ */