6 * MGABiosInfo - This struct describes the video BIOS info block.
9 * Do not mess with this, unless you know what you are doing.
10 * The data lengths and types are critical.
13 * October 7, 1996 - [aem] Andrew E. Mileski
14 * This struct was shamelessly stolen from the MGA DDK.
15 * It has been reformatted, and the data types changed.
18 /* Length of this structure in bytes */
22 * Unique number identifying the product type
23 * 0 : MGA-S1P20 (2MB base with 175MHz Ramdac)
24 * 1 : MGA-S1P21 (2MB base with 220MHz Ramdac)
27 * 4 : MGA-S1P40 (4MB base with 175MHz Ramdac)
28 * 5 : MGA-S1P41 (4MB base with 220MHz Ramdac)
32 /* Serial number of the board */
36 * Manufacturing date of the board (at product test)
37 * Format: yyyy yyym mmmd dddd
41 /* Identification of manufacturing site */
45 * Number and revision level of the PCB
46 * Format: nnnn nnnn nnnr rrrr
47 * n = PCB number ex:576 (from 0->2047)
48 * r = PCB revision (from 0->31)
52 /* Identification of any PMBs */
56 * Bit 0-7 : Ramdac speed (0=175MHz, 1=220MHz)
57 * Bit 8-15 : Ramdac type (0=TVP3026, 1=TVP3027)
61 /* Maximum PCLK of the ramdac */
64 /* Maximum LDCLK supported by the WRAM memory */
67 /* Maximum MCLK of base board */
70 /* Maximum MCLK of 4Mb board */
73 /* Maximum MCLK of 8Mb board */
76 /* Maximum MCLK of board with multimedia module */
79 /* Diagnostic test pass frequency */
82 /* Default VGA mode1 pixel frequency */
85 /* Default VGA mode2 pixel frequency */
88 /* Date of last BIOS programming/update */
91 /* Number of times BIOS has been programmed */
94 /* Support for up to 32 hardware/software options */
97 /* Support for up to 32 hardware/software features */
100 /* Definition of VGA mode MCLK */
103 /* Indicate the revision level of this header struct */
109 /* from the PINS structure, refer pins info from MGA */
110 typedef struct tagParamMGA
{
112 __u8 StructLen
; /* 2 */
114 __u16 StructRev
; /* 4 */
115 __u16 ProgramDate
; /* 6 */
116 __u16 ProgramCnt
; /* 8 */
117 __u16 ProductID
; /* 10 */
118 __u8 SerNo
[16]; /* 12 */
119 __u8 PLInfo
[6]; /* 28 */
120 __u16 PCBInfo
; /* 34 */
121 __u32 FeatFlag
; /* 36 */
122 __u8 RamdacType
; /* 40 */
123 __u8 RamdacSpeed
; /* 41 */
124 __u8 PclkMax
; /* 42 */
126 __u8 ClkMem
; /* 44 */
127 __u8 Clk4MB
; /* 45 */
128 __u8 Clk8MB
; /* 46 */
129 __u8 ClkMod
; /* 47 */
130 __u8 TestClk
; /* 48 */
131 __u8 VGAFreq1
; /* 49 */
132 __u8 VGAFreq2
; /* 50 */
133 __u8 MCTLWTST
; /* 51 */
134 __u8 VidCtrl
; /* 52 */
135 __u8 Clk12MB
; /* 53 */
136 __u8 Clk16MB
; /* 54 */
137 __u8 Reserved
[8]; /* 55-62 */
138 __u8 PinCheck
; /* 63 */