rev |
line source |
jozee@4586
|
1 --- 915resolution.c
|
jozee@4586
|
2 +++ 915resolution.c
|
jozee@4586
|
3 @@ -55,13 +55,13 @@
|
jozee@4586
|
4 typedef unsigned int cardinal;
|
jozee@4586
|
5
|
jozee@4586
|
6 typedef enum {
|
jozee@4586
|
7 - CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM,
|
jozee@4586
|
8 - CT_946GZ, CT_G965, CT_Q965
|
jozee@4586
|
9 + CT_UNKWN, CT_500GMA, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM,
|
jozee@4586
|
10 + CT_945GME, CT_946GZ, CT_G965, CT_Q965, CT_965GM
|
jozee@4586
|
11 } chipset_type;
|
jozee@4586
|
12
|
jozee@4586
|
13 char * chipset_type_names[] = {
|
jozee@4586
|
14 - "UNKNOWN", "830", "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM",
|
jozee@4586
|
15 - "946GZ", "G965", "Q965"
|
jozee@4586
|
16 + "UNKNOWN", "500GMA", "830", "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM",
|
jozee@4586
|
17 + "945GME", "946GZ", "G965", "Q965", "965GM"
|
jozee@4586
|
18 };
|
jozee@4586
|
19
|
jozee@4586
|
20 typedef enum {
|
jozee@4586
|
21 @@ -179,8 +179,12 @@
|
jozee@4586
|
22
|
jozee@4586
|
23 chipset_type get_chipset(cardinal id) {
|
jozee@4586
|
24 chipset_type type;
|
jozee@4586
|
25 -
|
jozee@4586
|
26 +
|
jozee@4586
|
27 switch (id) {
|
jozee@4586
|
28 + case 0x81008086:
|
jozee@4586
|
29 + type = CT_500GMA;
|
jozee@4586
|
30 + break;
|
jozee@4586
|
31 +
|
jozee@4586
|
32 case 0x35758086:
|
jozee@4586
|
33 type = CT_830;
|
jozee@4586
|
34 break;
|
jozee@4586
|
35 @@ -192,14 +196,14 @@
|
jozee@4586
|
36 case 0x35808086:
|
jozee@4586
|
37 type = CT_855GM;
|
jozee@4586
|
38 break;
|
jozee@4586
|
39 -
|
jozee@4586
|
40 +
|
jozee@4586
|
41 case 0x25708086:
|
jozee@4586
|
42 type = CT_865G;
|
jozee@4586
|
43 break;
|
jozee@4586
|
44
|
jozee@4586
|
45 case 0x25808086:
|
jozee@4586
|
46 - type = CT_915G;
|
jozee@4586
|
47 - break;
|
jozee@4586
|
48 + type = CT_915G;
|
jozee@4586
|
49 + break;
|
jozee@4586
|
50
|
jozee@4586
|
51 case 0x25908086:
|
jozee@4586
|
52 type = CT_915GM;
|
jozee@4586
|
53 @@ -213,18 +217,26 @@
|
jozee@4586
|
54 type = CT_945GM;
|
jozee@4586
|
55 break;
|
jozee@4586
|
56
|
jozee@4586
|
57 + case 0x27ac8086:
|
jozee@4586
|
58 + type = CT_945GME;
|
jozee@4586
|
59 + break;
|
jozee@4586
|
60 +
|
jozee@4586
|
61 case 0x29708086:
|
jozee@4586
|
62 type = CT_946GZ;
|
jozee@4586
|
63 break;
|
jozee@4586
|
64
|
jozee@4586
|
65 case 0x29a08086:
|
jozee@4586
|
66 - type = CT_G965;
|
jozee@4586
|
67 - break;
|
jozee@4586
|
68 + type = CT_G965;
|
jozee@4586
|
69 + break;
|
jozee@4586
|
70
|
jozee@4586
|
71 case 0x29908086:
|
jozee@4586
|
72 type = CT_Q965;
|
jozee@4586
|
73 break;
|
jozee@4586
|
74
|
jozee@4586
|
75 + case 0x2a008086:
|
jozee@4586
|
76 + type = CT_965GM;
|
jozee@4586
|
77 + break;
|
jozee@4586
|
78 +
|
jozee@4586
|
79 default:
|
jozee@4586
|
80 type = CT_UNKWN;
|
jozee@4586
|
81 break;
|
jozee@4586
|
82 @@ -502,15 +514,18 @@
|
jozee@4586
|
83 outl(0x8000005a, 0xcf8);
|
jozee@4586
|
84 outb(0x33, 0xcfe);
|
jozee@4586
|
85 break;
|
jozee@4586
|
86 + case CT_500GMA:
|
jozee@4586
|
87 case CT_845G:
|
jozee@4586
|
88 case CT_865G:
|
jozee@4586
|
89 case CT_915G:
|
jozee@4586
|
90 case CT_915GM:
|
jozee@4586
|
91 case CT_945G:
|
jozee@4586
|
92 case CT_945GM:
|
jozee@4586
|
93 + case CT_945GME:
|
jozee@4586
|
94 case CT_946GZ:
|
jozee@4586
|
95 case CT_G965:
|
jozee@4586
|
96 case CT_Q965:
|
jozee@4586
|
97 + case CT_965GM:
|
jozee@4586
|
98 outl(0x80000090, 0xcf8);
|
jozee@4586
|
99 map->b1 = inb(0xcfd);
|
jozee@4586
|
100 map->b2 = inb(0xcfe);
|
jozee@4586
|
101 @@ -542,15 +557,18 @@
|
jozee@4586
|
102 outl(0x8000005a, 0xcf8);
|
jozee@4586
|
103 outb(map->b1, 0xcfe);
|
jozee@4586
|
104 break;
|
jozee@4586
|
105 + case CT_500GMA:
|
jozee@4586
|
106 case CT_845G:
|
jozee@4586
|
107 case CT_865G:
|
jozee@4586
|
108 case CT_915G:
|
jozee@4586
|
109 case CT_915GM:
|
jozee@4586
|
110 case CT_945G:
|
jozee@4586
|
111 case CT_945GM:
|
jozee@4586
|
112 + case CT_945GME:
|
jozee@4586
|
113 case CT_946GZ:
|
jozee@4586
|
114 case CT_G965:
|
jozee@4586
|
115 case CT_Q965:
|
jozee@4586
|
116 + case CT_965GM:
|
jozee@4586
|
117 outl(0x80000090, 0xcf8);
|
jozee@4586
|
118 outb(map->b1, 0xcfd);
|
jozee@4586
|
119 outb(map->b2, 0xcfe);
|
jozee@4586
|
120 @@ -781,8 +799,10 @@
|
jozee@4586
|
121 if(argc<=index) {
|
jozee@4586
|
122 return 0;
|
jozee@4586
|
123 }
|
jozee@4586
|
124 -
|
jozee@4586
|
125 - if (!strcmp(argv[index], "845")) {
|
jozee@4586
|
126 + else if (!strcmp(argv[index], "500GMA")) {
|
jozee@4586
|
127 + *forced_chipset = CT_500GMA;
|
jozee@4586
|
128 + }
|
jozee@4586
|
129 + else if (!strcmp(argv[index], "845")) {
|
jozee@4586
|
130 *forced_chipset = CT_845G;
|
jozee@4586
|
131 }
|
jozee@4586
|
132 else if (!strcmp(argv[index], "855")) {
|
jozee@4586
|
133 @@ -803,6 +823,9 @@
|
jozee@4586
|
134 else if (!strcmp(argv[index], "945GM")) {
|
jozee@4586
|
135 *forced_chipset = CT_945GM;
|
jozee@4586
|
136 }
|
jozee@4586
|
137 + else if (!strcmp(argv[index], "945GME")) {
|
jozee@4586
|
138 + *forced_chipset = CT_945GME;
|
jozee@4586
|
139 + }
|
jozee@4586
|
140 else if (!strcmp(argv[index], "946GZ")) {
|
jozee@4586
|
141 *forced_chipset = CT_946GZ;
|
jozee@4586
|
142 }
|
jozee@4586
|
143 @@ -812,6 +835,9 @@
|
jozee@4586
|
144 else if (!strcmp(argv[index], "Q965")) {
|
jozee@4586
|
145 *forced_chipset = CT_Q965;
|
jozee@4586
|
146 }
|
jozee@4586
|
147 + else if (!strcmp(argv[index], "965GM")) {
|
jozee@4586
|
148 + *forced_chipset = CT_965GM;
|
jozee@4586
|
149 + }
|
jozee@4586
|
150 else {
|
jozee@4586
|
151 *forced_chipset = CT_UNKWN;
|
jozee@4586
|
152 }
|