0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054 #ifndef _SISUSB_INIT_H_
0055 #define _SISUSB_INIT_H_
0056
0057
0058 #define ModeText 0x00
0059 #define ModeCGA 0x01
0060 #define ModeEGA 0x02
0061 #define ModeVGA 0x03
0062 #define Mode15Bpp 0x04
0063 #define Mode16Bpp 0x05
0064 #define Mode24Bpp 0x06
0065 #define Mode32Bpp 0x07
0066
0067 #define ModeTypeMask 0x07
0068 #define IsTextMode 0x07
0069
0070 #define DACInfoFlag 0x0018
0071 #define MemoryInfoFlag 0x01E0
0072 #define MemorySizeShift 5
0073
0074
0075 #define Charx8Dot 0x0200
0076 #define LineCompareOff 0x0400
0077 #define CRT2Mode 0x0800
0078 #define HalfDCLK 0x1000
0079 #define NoSupportSimuTV 0x2000
0080 #define NoSupportLCDScale 0x4000
0081 #define DoubleScanMode 0x8000
0082
0083
0084 #define SupportTV 0x0008
0085 #define SupportTV1024 0x0800
0086 #define SupportCHTV 0x0800
0087 #define Support64048060Hz 0x0800
0088 #define SupportHiVision 0x0010
0089 #define SupportYPbPr750p 0x1000
0090 #define SupportLCD 0x0020
0091 #define SupportRAMDAC2 0x0040
0092 #define SupportRAMDAC2_135 0x0100
0093 #define SupportRAMDAC2_162 0x0200
0094 #define SupportRAMDAC2_202 0x0400
0095 #define InterlaceMode 0x0080
0096 #define SyncPP 0x0000
0097 #define SyncPN 0x4000
0098 #define SyncNP 0x8000
0099 #define SyncNN 0xc000
0100
0101
0102 #define ProgrammingCRT2 0x0001
0103 #define LowModeTests 0x0002
0104 #define LCDVESATiming 0x0008
0105 #define EnableLVDSDDA 0x0010
0106 #define SetDispDevSwitchFlag 0x0020
0107 #define CheckWinDos 0x0040
0108 #define SetDOSMode 0x0080
0109
0110
0111 #define SIS_RI_320x200 0
0112 #define SIS_RI_320x240 1
0113 #define SIS_RI_320x400 2
0114 #define SIS_RI_400x300 3
0115 #define SIS_RI_512x384 4
0116 #define SIS_RI_640x400 5
0117 #define SIS_RI_640x480 6
0118 #define SIS_RI_800x600 7
0119 #define SIS_RI_1024x768 8
0120 #define SIS_RI_1280x1024 9
0121 #define SIS_RI_1600x1200 10
0122 #define SIS_RI_1920x1440 11
0123 #define SIS_RI_2048x1536 12
0124 #define SIS_RI_720x480 13
0125 #define SIS_RI_720x576 14
0126 #define SIS_RI_1280x960 15
0127 #define SIS_RI_800x480 16
0128 #define SIS_RI_1024x576 17
0129 #define SIS_RI_1280x720 18
0130 #define SIS_RI_856x480 19
0131 #define SIS_RI_1280x768 20
0132 #define SIS_RI_1400x1050 21
0133 #define SIS_RI_1152x864 22
0134 #define SIS_RI_848x480 23
0135 #define SIS_RI_1360x768 24
0136 #define SIS_RI_1024x600 25
0137 #define SIS_RI_1152x768 26
0138 #define SIS_RI_768x576 27
0139 #define SIS_RI_1360x1024 28
0140 #define SIS_RI_1680x1050 29
0141 #define SIS_RI_1280x800 30
0142 #define SIS_RI_1920x1080 31
0143 #define SIS_RI_960x540 32
0144 #define SIS_RI_960x600 33
0145
0146 #define SIS_VIDEO_CAPTURE 0x00 - 0x30
0147 #define SIS_VIDEO_PLAYBACK 0x02 - 0x30
0148 #define SIS_CRT2_PORT_04 0x04 - 0x30
0149
0150 int SiSUSBSetMode(struct SiS_Private *SiS_Pr, unsigned short ModeNo);
0151 int SiSUSBSetVESAMode(struct SiS_Private *SiS_Pr, unsigned short VModeNo);
0152
0153 extern int sisusb_setreg(struct sisusb_usb_data *sisusb, u32 port, u8 data);
0154 extern int sisusb_getreg(struct sisusb_usb_data *sisusb, u32 port, u8 * data);
0155 extern int sisusb_setidxreg(struct sisusb_usb_data *sisusb, u32 port,
0156 u8 index, u8 data);
0157 extern int sisusb_getidxreg(struct sisusb_usb_data *sisusb, u32 port,
0158 u8 index, u8 * data);
0159 extern int sisusb_setidxregandor(struct sisusb_usb_data *sisusb, u32 port,
0160 u8 idx, u8 myand, u8 myor);
0161 extern int sisusb_setidxregor(struct sisusb_usb_data *sisusb, u32 port,
0162 u8 index, u8 myor);
0163 extern int sisusb_setidxregand(struct sisusb_usb_data *sisusb, u32 port,
0164 u8 idx, u8 myand);
0165
0166 void sisusb_delete(struct kref *kref);
0167 int sisusb_writeb(struct sisusb_usb_data *sisusb, u32 adr, u8 data);
0168 int sisusb_readb(struct sisusb_usb_data *sisusb, u32 adr, u8 * data);
0169 int sisusb_copy_memory(struct sisusb_usb_data *sisusb, u8 *src,
0170 u32 dest, int length);
0171 int sisusb_reset_text_mode(struct sisusb_usb_data *sisusb, int init);
0172 int sisusbcon_do_font_op(struct sisusb_usb_data *sisusb, int set, int slot,
0173 u8 * arg, int cmapsz, int ch512, int dorecalc,
0174 struct vc_data *c, int fh, int uplock);
0175 void sisusb_set_cursor(struct sisusb_usb_data *sisusb, unsigned int location);
0176 int sisusb_console_init(struct sisusb_usb_data *sisusb, int first, int last);
0177 void sisusb_console_exit(struct sisusb_usb_data *sisusb);
0178 void sisusb_init_concode(void);
0179
0180 #endif