1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
use strict;
BEGIN {
#- for testing purpose
(my $f = __FILE__) =~ s|/[^/]*$||;
push @INC, $f;
}
use MDK::Common;
use list_modules;
#- seldom used modules
#- we don't bother making a special floppy for those
my %modules_only_for_all_img = (
'network/main' => [
qw(acenic),
qw(aironet4500_card com20020-pci hamachi starfire winbond-840),
if_(arch() =~ /alpha|ppc/, qw(sb1000)),
qw(iph5526),
qw(ac3200 at1700 atp ni5010 ni52 ni65), #- unused from Jeff
],
'disk/scsi' => [
# ISA cards:
qw(NCR53c406a aha152x psi240i qlogicfas qlogicfc wd7000 sim710 t128 ultrastor), '53c7,8xx',
qw(qla2x00 in2000 pas16 a100u2w seagate g_NCR5380),
if_(arch() =~ 'disk/sata' => [
qw(ahci ata_piix sata_nv sata_promise sata_sil sata_sis sata_svw sata_sx4 sata_uli sata_via sata_vsc sx8),
],
'disk/hardware_raid' => [
qw(i2o_block qla2200 qla2300 cpqfc DAC960 gdth pdc-ultra mptscsih),
],
);
#- modules that will only be available in stage2
#- those modules are NOT in all.img, network.img...
#- there should only be modules that can't be used on stage1
#- completly unused modules should be removed directly from the kernel
#- (and so be removed from stage2 too)
my %modules_removed_from_stage1 = (
'network/main' => [
'plip'
],
'disk/hardware_raid' => [
qw(imm ppa),
],
);
my @modules_always_on_stage1 = qw(floppy);
sub flatten_and_check {
my ($h) = @_;
map {
my $category = $_;
if (my $cat = module2category($_)) {
warn "ERROR in modules.pl: module $_ is in category $cat, not in $category\n";
} else {
warn "ERROR in modules.pl: unknown module $_\n";
}
}
exit 1;
}
@l;
} keys %$h;
}
my @modules_only_for_all_img = flatten_and_check(\%modules_only_for_all_img);
my @modules_removed_from_stage1 = flatten_and_check(\%modules_removed_from_stage1);
my %images = (
pcmcia => 'fs/cdrom|loopback disk/cdrom|raw|pcmcia bus/pcmcia',uot;FireGL3000" "true"
# Alliance Semiconductor
NAME Alliance ProMotion-based cards
DRIVER apm
# NeoMagic
NAME NeoMagic MagicGraph (laptop/notebook)
DRIVER neomagic
LINE Option "overrideValidateMode"
LINE # Chipset "NM2160"
LINE # IOBase 0xfea00000
LINE # MemBase 0xfd000000
LINE # VideoRam 2048
LINE # DacSpeed 90
LINE # Option "linear"
LINE # Option "nolinear"
LINE # Option "sw_cursor"
LINE # Option "hw_cursor"
LINE # Option "no_accel"
LINE # Option "intern_disp"
LINE # Option "extern_disp"
LINE # Option "mmio"
LINE # Option "no_mmio"
LINE # Option "lcd_center"
LINE # Option "no_stretch"
NAME NeoMagic 128XD
SEE NeoMagic MagicGraph (laptop/notebook)
LINE Option "XaaNoScanlineImageWriteRect"
LINE Option "XaaNoScanlineCPUToScreenColorExpandFill"
NAME NeoMagic MagicMedia (laptop/notebook)
DRIVER neomagic
NAME NeoMagic MagicMedia 256XL+
SEE NeoMagic MagicMedia (laptop/notebook)
LINE Option "sw_cursor"
# Digital
NAME Digital 8-plane TGA (Generic)
CHIPSET TGA
DRIVER tga
NAME Digital 8-plane TGA (Bt485-based)
CHIPSET TGA
DRIVER tga
LINE Ramdac "Bt485"
NAME Digital 24-plane TGA
CHIPSET TGA
DRIVER tga
LINE Ramdac "Bt463"
# Rendition
NAME Rendition Verite-based cards
DRIVER rendition
LINE # Option "sw_cursor"
# Intel
NAME Intel 740-based cards
DRIVER i740
LINE #Option "no_accel"
LINE #Option "sw_cursor"
LINE #Option "hw_cursor"
LINE #Option "sgram"
LINE #Option "sdram"
NAME Intel 810 and later
DRIVER intel
DRI_GLX
# unlike i815 and newer, i810 doesn't support graphical installer:
# using "i810" driver instead of "intel" b/c of segfault when using XAA acceleration
NAME Intel 810
DRIVER i810
DRI_GLX
NAME Intel Vermilion-based cards
DRIVER vermilion
# 3DFX
NAME 3DFX Voodoo / Voodoo II
DRIVER voodoo
NAME 3DFX Voodoo 3 - 5 / Banshee / Rush
DRIVER tdfx
DRI_GLX
# Silicon Motion, Inc.
NAME Silicon Motion Lynx-based cards
DRIVER siliconmotion
# Sun
NAME Sun Monochrome (bwtwo)
DRIVER sunbw2
NAME Sun Color3 (cgthree)
DRIVER suncg3
NAME Sun GX-based cards
DRIVER suncg6
NAME Sun SX-based cards
DRIVER suncg14
NAME Sun ZX-based cards
DRIVER sunleo
NAME Sun TCX-based cards
DRIVER suntcx
NAME Sun Elite3D- / FFB-based cards
DRIVER sunffb
# VMware virtual video cards
NAME VMware virtual video card
DRIVER vmware
# VirtualBox virtual video cards
NAME VirtualBox virtual video card
DRIVER vboxvideo
# Misc
END
|