init.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:9k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. #ifndef _INIT_
  2. #define _INIT_
  3. #include "osdef.h"
  4. #include "initdef.h"
  5. #include "vgatypes.h"
  6. #include "vstruct.h"
  7. #include <linux/types.h>
  8. #include <asm/io.h>
  9. #include <linux/sisfb.h>
  10. USHORT SiS_DRAMType[17][5] = { 
  11. {0x0C, 0x0A, 0x02, 0x40, 0x39},
  12. {0x0D, 0x0A, 0x01, 0x40, 0x48},
  13. {0x0C, 0x09, 0x02, 0x20, 0x35},
  14. {0x0D, 0x09, 0x01, 0x20, 0x44},
  15. {0x0C, 0x08, 0x02, 0x10, 0x31},
  16. {0x0D, 0x08, 0x01, 0x10, 0x40},
  17. {0x0C, 0x0A, 0x01, 0x20, 0x34},
  18. {0x0C, 0x09, 0x01, 0x08, 0x32},
  19. {0x0B, 0x08, 0x02, 0x08, 0x21},
  20. {0x0C, 0x08, 0x01, 0x08, 0x30},
  21. {0x0A, 0x08, 0x02, 0x04, 0x11},
  22. {0x0B, 0x0A, 0x01, 0x10, 0x28},
  23. {0x09, 0x08, 0x02, 0x02, 0x01},
  24. {0x0B, 0x09, 0x01, 0x08, 0x24},
  25. {0x0B, 0x08, 0x01, 0x04, 0x20},
  26. {0x0A, 0x08, 0x01, 0x02, 0x10},
  27. {0x09, 0x08, 0x01, 0x01, 0x00}
  28. };
  29. USHORT SiS_SDRDRAM_TYPE[13][5] = {
  30. {2, 12, 9, 64, 0x35},
  31. {1, 13, 9, 64, 0x44},
  32. {2, 12, 8, 32, 0x31},
  33. {2, 11, 9, 32, 0x25},
  34. {1, 12, 9, 32, 0x34},
  35. {1, 13, 8, 32, 0x40},
  36. {2, 11, 8, 16, 0x21},
  37. {1, 12, 8, 16, 0x30},
  38. {1, 11, 9, 16, 0x24},
  39. {1, 11, 8, 8, 0x20},
  40. {2, 9, 8, 4, 0x01},
  41. {1, 10, 8, 4, 0x10},
  42. {1, 9, 8, 2, 0x00}
  43. };
  44. USHORT SiS_DDRDRAM_TYPE[4][5] = {
  45. {2, 12, 9, 64, 0x35},
  46. {2, 12, 8, 32, 0x31},
  47. {2, 11, 8, 16, 0x21},
  48. {2, 9, 8, 4, 0x01}
  49. };
  50. UCHAR SiS_ChannelAB, SiS_DataBusWidth;
  51. USHORT SiS_MDA_DAC[] = { 
  52. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  53. 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
  54. 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
  55. 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
  56. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  57. 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
  58. 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
  59. 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F
  60. };
  61. USHORT SiS_CGA_DAC[] = { 
  62. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
  63. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
  64. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
  65. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
  66. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
  67. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
  68. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
  69. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
  70. };
  71. USHORT SiS_EGA_DAC[] = { 
  72. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x05, 0x15,
  73. 0x20, 0x30, 0x24, 0x34, 0x21, 0x31, 0x25, 0x35,
  74. 0x08, 0x18, 0x0C, 0x1C, 0x09, 0x19, 0x0D, 0x1D,
  75. 0x28, 0x38, 0x2C, 0x3C, 0x29, 0x39, 0x2D, 0x3D,
  76. 0x02, 0x12, 0x06, 0x16, 0x03, 0x13, 0x07, 0x17,
  77. 0x22, 0x32, 0x26, 0x36, 0x23, 0x33, 0x27, 0x37,
  78. 0x0A, 0x1A, 0x0E, 0x1E, 0x0B, 0x1B, 0x0F, 0x1F,
  79. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
  80. };
  81. USHORT SiS_VGA_DAC[] = { 
  82. 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
  83. 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
  84. 0x00, 0x05, 0x08, 0x0B, 0x0E, 0x11, 0x14, 0x18,
  85. 0x1C, 0x20, 0x24, 0x28, 0x2D, 0x32, 0x38, 0x3F,
  86. 0x00, 0x10, 0x1F, 0x2F, 0x3F, 0x1F, 0x27, 0x2F,
  87. 0x37, 0x3F, 0x2D, 0x31, 0x36, 0x3A, 0x3F, 0x00,
  88. 0x07, 0x0E, 0x15, 0x1C, 0x0E, 0x11, 0x15, 0x18,
  89. 0x1C, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x00, 0x04,
  90. 0x08, 0x0C, 0x10, 0x08, 0x0A, 0x0C, 0x0E, 0x10,
  91. 0x0B, 0x0C, 0x0D, 0x0F, 0x10
  92. };
  93. USHORT SiS_P3c4, SiS_P3d4, SiS_P3c0, SiS_P3ce, SiS_P3c2;
  94. USHORT SiS_P3ca, SiS_P3c6, SiS_P3c7, SiS_P3c8, SiS_P3c9, SiS_P3da;
  95. USHORT SiS_Part1Port, SiS_Part2Port;
  96. USHORT SiS_Part3Port, SiS_Part4Port, SiS_Part5Port;
  97. USHORT SiS_CRT1Mode;
  98. USHORT flag_clearbuffer; /*0: no clear frame buffer 1:clear frame buffer  */
  99. int SiS_RAMType; /*int      ModeIDOffset,StandTable,CRT1Table,ScreenOffset,REFIndex; */
  100. USHORT SiS_ModeType;
  101. USHORT SiS_IF_DEF_LVDS, SiS_IF_DEF_TRUMPION, SiS_IF_DEF_DSTN; /*add for dstn */
  102. USHORT SiS_IF_DEF_CH7005, SiS_IF_DEF_HiVision;
  103. USHORT SiS_VBInfo, SiS_LCDResInfo, SiS_LCDTypeInfo, SiS_LCDInfo, SiS_VBType; /*301b */
  104. USHORT SiS_SelectCRT2Rate;
  105. extern USHORT SiS_SetFlag;
  106. void SiS_SetMemoryClock (ULONG ROMAddr);
  107. void SiS_SetDRAMModeRegister (ULONG ROMAddr);
  108. void SiS_SetDRAMSize_310 (PSIS_HW_DEVICE_INFO);
  109. void SiS_SetDRAMSize_300 (PSIS_HW_DEVICE_INFO HwDeviceExtension);
  110. USHORT SiS_ChkBUSWidth_300 (ULONG FBAddress);
  111. UCHAR SiS_Get310DRAMType (ULONG ROMAddr);
  112. void SiS_Delay15us (ULONG);
  113. BOOLEAN SiS_SearchModeID (ULONG ROMAddr, USHORT ModeNo, USHORT * ModeIdIndex);
  114. BOOLEAN SiS_CheckMemorySize (ULONG ROMAddr,
  115.      PSIS_HW_DEVICE_INFO HwDeviceExtension,
  116.      USHORT ModeNo, USHORT ModeIdIndex);
  117. UCHAR SiS_GetModePtr (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex);
  118. void SiS_SetSeqRegs (ULONG, USHORT StandTableIndex);
  119. void SiS_SetMiscRegs (ULONG, USHORT StandTableIndex);
  120. void SiS_SetCRTCRegs (ULONG, PSIS_HW_DEVICE_INFO HwDeviceExtension,
  121.       USHORT StandTableIndex);
  122. void SiS_SetATTRegs (ULONG, USHORT StandTableIndex);
  123. void SiS_SetGRCRegs (ULONG, USHORT StandTableIndex);
  124. void SiS_ClearExt1Regs (void);
  125. void SiS_SetSync (ULONG ROMAddr, USHORT RefreshRateTableIndex);
  126. void SiS_SetCRT1CRTC (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex,
  127.       USHORT RefreshRateTableIndex);
  128. void SiS_SetCRT1VCLK (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex,
  129.       PSIS_HW_DEVICE_INFO, USHORT RefreshRateTableIndex);
  130. void SiS_SetVCLKState (ULONG ROMAddr, PSIS_HW_DEVICE_INFO, USHORT ModeNo,
  131.        USHORT RefreshRateTableIndex);
  132. void SiS_LoadDAC (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex);
  133. void SiS_DisplayOn (void);
  134. void SiS_SetCRT1ModeRegs (ULONG ROMAddr, PSIS_HW_DEVICE_INFO, USHORT ModeNo,
  135.   USHORT ModeIdIndex, USHORT RefreshRateTableIndex);
  136. void SiS_WriteDAC (USHORT, USHORT, USHORT, USHORT);
  137. void SiS_GetVBType (USHORT BaseAddr); /*301b */
  138. USHORT SiS_ChkBUSWidth (ULONG);
  139. USHORT SiS_GetModeIDLength (ULONG, USHORT);
  140. USHORT SiS_GetRefindexLength (ULONG, USHORT);
  141. void SiS_SetInterlace (ULONG ROMAddr, USHORT ModeNo,
  142.        USHORT RefreshRateTableIndex);
  143. USHORT SiS_CalcDelay2 (ULONG, UCHAR);
  144. USHORT SiS_CalcDelay (ULONG, USHORT);
  145. void SiS_Set_LVDS_TRUMPION (PSIS_HW_DEVICE_INFO HwDeviceExtension);
  146. void SiS_SetCRT1Offset (ULONG, USHORT, USHORT, USHORT, PSIS_HW_DEVICE_INFO);
  147. void SiS_SetCRT1FIFO (ULONG, USHORT, PSIS_HW_DEVICE_INFO);
  148. void SiS_SetCRT1FIFO2 (ULONG, USHORT ModeNo, PSIS_HW_DEVICE_INFO,
  149.        USHORT RefreshRateTableIndex);
  150. void SiS_CRT2AutoThreshold (USHORT BaseAddr);
  151. void SiS_ClearBuffer (PSIS_HW_DEVICE_INFO, USHORT ModeNo);
  152. void SiS_SetCRT1Group (ULONG ROMAddr, PSIS_HW_DEVICE_INFO HwDeviceExtension,
  153.        USHORT ModeNo, USHORT ModeIdIndex);
  154. void SiS_DetectMonitor (PSIS_HW_DEVICE_INFO HwDeviceExtension, USHORT BaseAddr);
  155. void SiS_GetSenseStatus (PSIS_HW_DEVICE_INFO HwDeviceExtension, ULONG ROMAddr);
  156. USHORT SiS_TestMonitorType (UCHAR R_DAC, UCHAR G_DAC, UCHAR B_DAC);
  157. USHORT SiS_SenseCHTV (VOID);
  158. BOOLEAN SiS_Sense (USHORT Part4Port, USHORT tempbx, USHORT tempcx);
  159. BOOLEAN SiS_GetPanelID (VOID);
  160. BOOLEAN SiS_GetLCDDDCInfo (PSIS_HW_DEVICE_INFO);
  161. USHORT SiS_SenseLCD (PSIS_HW_DEVICE_INFO);
  162. extern BOOLEAN SiS_SetCRT2Group301 (USHORT BaseAddr, ULONG ROMAddr,
  163.     USHORT ModeNo,
  164.     PSIS_HW_DEVICE_INFO HwDeviceExtension);
  165. extern void SiS_PresetScratchregister (USHORT SiS_P3d4,
  166.        PSIS_HW_DEVICE_INFO HwDeviceExtension);
  167. extern void SiS_UnLockCRT2 (PSIS_HW_DEVICE_INFO HwDeviceExtension,
  168.     USHORT BaseAddr);
  169. extern void SiS_LockCRT2 (PSIS_HW_DEVICE_INFO HwDeviceExtension,
  170.   USHORT BaseAddr);
  171. extern BOOLEAN SiS_BridgeIsOn (USHORT BaseAddr);
  172. extern BOOLEAN SiS_BridgeIsEnable (USHORT BaseAddr, PSIS_HW_DEVICE_INFO);
  173. extern void SiS_SetTVSystem301 (VOID);
  174. extern BOOLEAN SiS_GetLCDDDCInfo301 (PSIS_HW_DEVICE_INFO HwDeviceExtension);
  175. extern BOOLEAN SiS_GetSenseStatus301 (PSIS_HW_DEVICE_INFO HwDeviceExtension,
  176.       USHORT BaseAddr, ULONG ROMAddr);
  177. extern USHORT SiS_GetVCLKLen (ULONG ROMAddr,
  178.       PSIS_HW_DEVICE_INFO HwDeviceExtension);
  179. extern BOOLEAN SiS_SetCRT2Group302 (USHORT BaseAddr, ULONG ROMAddr,
  180.     USHORT ModeNo,
  181.     PSIS_HW_DEVICE_INFO HwDeviceExtension);
  182. extern void SiS_GetVBInfo301 (USHORT BaseAddr, ULONG ROMAddr, USHORT ModeNo,
  183.       USHORT ModeIdIndex,
  184.       PSIS_HW_DEVICE_INFO HwDeviceExtension);
  185. extern BOOLEAN SiS_GetLCDResInfo301 (ULONG ROMAddr, USHORT P3d4, USHORT ModeNo,
  186.      USHORT ModeIdIndex);
  187. extern USHORT SiS_VBInfo, LCDResInfo, LCDTypeInfo, LCDInfo;
  188. extern USHORT SiS_GetRatePtrCRT2 (ULONG ROMAddr, USHORT ModeNo,
  189.   USHORT ModeIdIndex);
  190. extern void SiS_LongWait (VOID);
  191. extern void SiS_SetRegANDOR (USHORT Port, USHORT Index, USHORT DataAND,
  192.      USHORT DataOR);
  193. extern USHORT SiS_GetResInfo (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex);
  194. extern void SiS_SetCH7005 (USHORT tempax);
  195. extern USHORT SiS_GetCH7005 (USHORT tempax);
  196. extern BOOLEAN SiS_GetLVDSCRT1Ptr (ULONG ROMAddr, USHORT ModeNo,
  197.    USHORT ModeIdIndex,
  198.    USHORT RefreshRateTableIndex,
  199.    USHORT * ResInfo, USHORT * DisplayType);
  200. extern BOOLEAN SiS_GetLCDACRT1Ptr (ULONG ROMAddr, USHORT ModeNo,
  201.    USHORT ModeIdIndex,
  202.    USHORT RefreshRateTableIndex,
  203.    USHORT * ResInfo, USHORT * DisplayType);
  204. extern USHORT SiS_GetVCLK2Ptr (ULONG ROMAddr, USHORT ModeNo, USHORT ModeIdIndex,
  205.        USHORT RefreshRateTableIndex,
  206.        PSIS_HW_DEVICE_INFO HwDeviceExtension);
  207. extern BOOLEAN SiS_Is301B (USHORT BaseAddr); /*301b */
  208. #endif