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
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
|
Version 0
# The version 0 module-info format is ('|' denotes the left margin):
# |<module-name>
# | <module-type> [<module-alias>]
# | "<description-string>"
# | <argument> "<argument-description-string>" ["<match-regex>" ["<default>"]]
# |# <comment>
# Stanzas are delimited by non-indented lines, and continued with indented lines.
# Comments start in the first column, or are preceded only by whitespace.
# The []'s above are not literal, they delimit optional material.
# There can be multiple <argument> lines.
# <module-name> is the name of the module without any .o extension, just
# as the module name would be entered in /etc/modules.conf
# <module-type> is the base part of the string demanded by kerneld (eth,
# scsi_hostadapter, etc.)
# <module-alias> is an optional identifier to identify groups of similar
# drivers, such as the non-scsi cdrom devices which are requested by
# block-major-*; they are given an alias of "cdrom".
# <description-string> is a free-form string enclosed in quotes to describe
# the module to a human reader
# <argument> is an argument such as io or irq, as understood by the module
# <argument-description-string> is a free-form description
# <match-regex> is a regular expression which can be used to test the
# validity of a user-entered string
# <default> is a default value. This should not be provided unless it is
# almost always the correct value, and will not, say, hang a user's computer
# if it is wrong
#
# Ideas for version 1 file format:
# o Add long description, presumably including all known cards supported
# by the module in question
# o Sub-argument description, for arguments which have multiple parts
# separated by commas, particularly ones which share code with boot-time
# arguments.
# o Optional architecture flag(?)
# drivers/net directory
3c501
eth
"3Com 3c501"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
3c503
eth
"3Com EtherLink II"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
xcvr "Transceiver (0 = BNC; 1 = AUI)" "[01]"
3c505
eth
"3Com Etherlink Plus"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
3c507
eth
"3Com EtherLink16"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
3c509
eth
"3Com EtherLink III"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
3c515
eth
"3Com 3c515 Corkscrew"
3c59x
eth
"3Com 3c590/3c595/3c90x/3cx980"
82596
eth
"Apricot 82596"
#a2065
# eth
# "Amiga Linux/68k A2065"
ac3200
eth
"Ansel Communications Model 3200"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
mem "Base shared memory address" "0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+"
acenic
eth
"Alteon AceNIC Gigabit"
aironet4500_card
eth
"Aironet 4500 PCI-ISA-i365 wireless"
arlan
eth
"Aironet Arlan 655"
#apricot
# eth
# "Apricot 82596"
# io "Base I/O address" "0x[0-9a-fA-F]+"
# irq "IRQ level" "[0-9]+"
#arcnet
# arc
# "ARCnet for IP driver"
# io "Base I/O address" "0x[0-9a-fA-F]+"
# irq "IRQ level" "[0-9]+"
# shmem "Base shared memory address" "0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+"
#ariadne
# eth
# "Amiga Linux/m68k Ariadne"
at1700
eth
"Allied Telesis AT1700"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
#atarilance
# eth
# "Atari Linux/m68k VME Lance"
# Not yet modularized
#atp
# atp
# "Attached (pocket) ethernet adapter"
cs89x0
eth
"Crystal SemiconductorCS89[02]0"
de4x5
eth
"DE4x5, DE434, DE450, and DE500 DEC EtherWORKS"
io "Base I/O address" "0x[0-9a-fA-F]+"
de600
eth
"D-Link DE-600 Ethernet pocket adapter"
de620
eth
"D-Link DE-620 Ethernet pocket adapter"
depca
eth
"DEC DEPCA and EtherWORKS DE1xx, DE2xx, DE422"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
dgrs
eth
"Digi RightSwitch SE-4, SE-6"
dma "Toggle DMA use" "[01]"
spantree "Toggle Spantree" "[01]"
hashexpire "Hash Expiration"
ipaddr "List of four IP addresses"
ipxnet "IPX network number"
#dlci
#dlci
#"RFC 1490 Frame Relay protocol"
dmfe
eth
"Davicom DM9102(A)/DM9132/DM9801 fast ethernet"
dummy
dummy
"Placeholder device for intermittent links"
e100
eth
"Intel EtherExpress/100 driver"
e1000
eth
"Intel EtherExpress/1000 gigabit"
e2100
eth
"Cabletron E2100"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
mem "Base shared memory address" "0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+"
xcvr "Transceiver (0 = internal; 1 = external)" "[01]"
eepro
eth
"EtherExpress Pro/10"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
eepro100
eth
"Intel EtherExpress Pro 100B"
eexpress
eth
"EtherExpress"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
epic100
eth
"SMC 83c170 EPIC/100"
eql
eql
"Load balancing for point-to-point network interfaces"
es3210
eth
"Racal-Interlan ES3210 EISA"
eth16i
eth
"ICL EtherTeam 16i/32 EISA"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
ewrk3
eth
"EtherWORKS 3: DE203, DE204, DE205"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
fmv18x
eth
"Fujitsu FMV-181/182/183/184"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
hamachi
eth
"A Packet Engines GNIC-II Gigabit"
hp-plus
eth
"HP PCLAN/plus"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
hp
eth
"HP LAN"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
hp100
eth
"HP10/100VG ANY LAN: J257x, 27248B, J2585"
hp100_port "Base I/O address" "0x[0-9a-fA-F]+"
#hydra
# eth
# "Amiga Linux/m68k Hydra"
ibmtr
tr
"Shared-memory IBM Token Ring 16/4"
io "Base I/O address" "0x[0-9a-fA-F]+"
lance
eth
"AT1500, HP J2405A, most NE2100/clone"
# NOT YET MODULARIZED!
#lance32
# eth
# "AMD PCnet32, PCnetPCI"
lne390
eth
"Mylex LNE390 EISA"
natsemi
eth
"NatSemi DP83815 Fast Ethernet"
myri_sbus
eth
"MyriCOM MyriNET SBUS"
ne
eth
"NE1000, NE2000, and compatible"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
ne2k-pci
eth
"PCI NE2000 clones"
ne3210
eth
"Novell NE3210 EISA"
ni5010
eth
"MiCom-Interlan NI5010"
ni52
eth
"NI5210 Ethernet"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
memstart "Base shared memory address" "0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+"
memend "Address of end of shared memory" "0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+"
ni65
eth
"NI6510 Ethernet"
olympic
tr
"IBM Olympic-based PCI roken ring"
pcnet32
eth
"AMD PCnet32"
# not modularized
#pi2
plip
plip
"Parallel Link Internet Protocal"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
#ppp
# ppp
# "Point-to-Point Protocol"
# NOT YET MODULARIZED!
#pt
rtl8129
eth
"RealTek RTL8129 Fast Ethernet"
8139too
eth
"RTL8139, SMC EZ Card Fast Ethernet"
sis900
eth
"SiS 900/7016 PCI Fast Ethernet"
sk98lin
eth
"SysKonnect SK-98xx Gigabit"
sdla
sdla
"Sangoma S502/S508"
# NOT YET MODULARIZED!
#seeq8005
# What's a seeq8005, anyway? From the comments in the file:
# "seeq8005.c: A network driver for linux." No, really!
# NOT YET MODULARIZED!
#sk_g16
# eth
# "Schneider & Koch (SK) G16"
sktr
tr
"SysKonnect Token Ring ISA/PCI"
# slhc is never loaded explicitly, only by dependencies
#slip
# sl
# "Serial Link Internet Protocol"
smc-ultra
eth
"SMC Ultra, SMC EtherEZ ISA"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
smc-ultra32
eth
"SMC Ultra32 EISA"
smc9194
eth
"SMC 9000 series Ethernet"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
ifport "Interface: 0 auto, 1 TP, 2 AUI/BNC" "[012]"
strip
strip_proto
"Starmode Radio IP"
# Not a module, may never be?
#sunlance
# eth
# "Linux/Sparc/Lance Ethernet"
sunbmac
eth
"Sun BigMac Ethernet"
sundance
eth
"Sundance ST201 Alta"
sunhme
eth
"Sun Happy Meal Ethernet"
sunqe
eth
"Sun Quad Ethernet"
tlan
eth
"ThunderLAN"
tulip
eth
"DEC 21040, most 21*40 Ethernet"
io "Base I/O address" "0x[0-9a-fA-F]+"
old_tulip
eth
"Older DEC 21040, most 21*40 Ethernet"
io "Base I/O address" "0x[0-9a-fA-F]+"
via-rhine
eth
"VIA VT86c100A Rhine-II PCI"
wavelan
eth
"AT&T GIS WaveLAN transceiver"
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
wd
eth
"WD8003 and WD8013 `compatible' ethercards."
io "Base I/O address" "0x[0-9a-fA-F]+"
irq "IRQ level" "[0-9]+"
mem "Base shared memory address" "0x[0-9a-fA-F]+"
mem_end "Address of end of shared memory (if non-standard size)" "0x[0-9a-fA-F]+"
wic
wic
"parallel port network driver"
winbond
eth
"Compex RL100ATX-PCI"
yellowfin
eth
"Packet Engines G-NIC PCI Gigabit"
# NOT YET MODULARIZED!
#znet
# eth
# drivers/scsi directory
# XXX this needs to be put back
#53c7,8xx
#scsi_hostadapter
#"Symbios/NCR 53c700 and 53c800 series"
3w-xxxx.o
scsi_hostadapter
"3ware Storage Controller"
AM53C974
scsi_hostadapter
"AM53/79C974 (PCscsi) driver"
BusLogic
scsi_hostadapter
"BusLogic MultiMaster SCSI"
NCR53c406a
scsi_hostadapter
"NCR53c406a-based SCSI"
# not a module
#a2091
#a3000
a100u2w
scsi_hostadapter
"Initio INI-9100UW"
aha152x "ioport, irq, host scsiid"
aacraid
scsi_hostadapter
"Adaptec AACRAID"
advansys
scsi_hostadapter
"AdvanSys SCSI"
aha152x
scsi_hostadapter
"Adaptec AHA-152x"
aha152x "ioport, irq, host scsiid"
aha1542
scsi_hostadapter
"Adaptec AHA-154x and 631x-based"
aha1740
scsi_hostadapter
"Adaptec AHA-174x"
aic7xxx
scsi_hostadapter
"Adaptec AHA-2740, 28xx, 29xx, 39xx"
aic7xxx_new
scsi_hostadapter
"New Adaptec AHA-2740, 28xx, 29xx, 39xx"
atp870u
scsi_hostadapter
"ACARD ATP870U PCI scsi controller"
cciss
scsi_hostadapter
"Compaq Smart Array 5300 Controller"
cpqarray
scsi_hostadapter
"Compaq Smart/2 RAID Controller"
cpqfc
scsi_hostadapter
"Compaq FibreChannel Controller"
DAC960
scsi_hostadapter
"Mylex DAC960 RAID Controller"
dmx319ld
scsi_hostadapter
"Domex DMX3191D"
dtc
scsi_hostadapter
"DTC 3180/3280"
# deprecated
eata
scsi_hostadapter
"All DMA-capable DPT SCSI"
# deprecated
eata_dma
scsi_hostadapter
"All DMA-capable DPT SCSI (dma mode)"
# deprecated
#eata_pio
# scsi_hostadapter
# "All PIO-capable DPT SCSI"
fcal
scsi_hostadapter
"Sun Enterprise Network Array (FC-AL)"
# not a module
# esp
fdomain
scsi_hostadapter
"Future Domain TMC-16xx SCSI"
g_NCR5380
scsi_hostadapter
"NCR5380 (generic driver)"
gdth
scsi_hostadapter
"ICP RAID Controller"
# not a module
# gvp11
i2o_block
scsi
"I2O Block driver"
imm
scsi_hostadapter
"Iomega ZIP Plus"
in2000
scsi_hostadapter
"IN2000 SCSI"
setup_string "ioport:addr"
initio
scsi_hostadapter
"Initio SCSI"
ips
scsi_hostadapter
"IBM ServeRAID"
megaraid
scsi_hostadapter
"MegaRAID 418, 428, 438, 466, 762"
ncr53c8xx
scsi_hostadapter
"Symbios/NCR 53C8xx"
pas16
scsi_hostadapter
"Pro Audio Spectrum/Studio 16"
pci2000
scsi_hostadapter
"PCI-2000 IntelliCache"
pci2220i
scsi_hostadapter
"PCI-2220I EIDE RAID"
pluto
scsi_hostadapter
"SparcSTORAGE Array"
ppa
scsi_hostadapter
"IOMEGA VPI0/Parallel ZIP"
imm
scsi_hostadapter
"IOMEGA VPI2/Parallel ZIP"
pcd
block-major-46 cdrom
"Parallel-port IDE CDROM"
psi240i
scsi_hostadapter
"PSI240I EIDE"
qlogicfas
scsi_hostadapter
"Qlogic FAS408 SCSI"
# XXX fixme - need space
#qlogicfc
# scsi_hostadapter
# "Qlogic ISP2x00 SCSI"
qla1280
scsi_hostadapter
"Qlogic 1280"
qla2x00
scsi_hostadapter
"Qlogic 2x00"
qlogicisp
scsi_hostadapter
"QLogic ISP1020 SCSI"
qlogicpti
scsi_hostadapter
"QLogic ISP1020 SCSI SBUS"
#scsi
# Can kerneld actually request this?
# scsi
# "SCSI Protocol support (midlevel driver)"
#sd
# block-major-8 sd
# "SCSI disk protocol"
seagate
scsi_hostadapter
"Seagate ST-01/02, Future Domain TMC-8xx"
#sg
# char-major-21 sg
# "SCSI generic driver for user-level SCSI protocol drivers"
#sr
# block-major-11 sr
# "SCSI CD-ROM protocol"
#st
# char-major-10 st
# "SCSI tape protocol"
#not currently used
#sym53c416
# scsi_hostadapter
# "sym53c416"
# needed for sparc
sym53c8xx
scsi_hostadapter
"Symbios 53C896"
t128
scsi_hostadapter
"Trantor T128/T128F/T228"
tmscsim
scsi_hostadapter
"Tekram DC-390(T) PCI"
u14-34f
scsi_hostadapter
"UltraStor 14F/34F (not 24F)"
ultrastor
scsi_hostadapter
"UltraStor 14F/24F/34F"
#wd33c93
# scsi_hostadapter
# "Amiga A2091/590"
wd7000
scsi_hostadapter
"WD7000 series"
# drivers/cdrom
aztcd
block-major-29 cdrom
"Aztech CD268 CDROM"
aztcd "Base I/O Address"
cdu31a
block-major-15 cdrom
"Sony CDU-31A CDROM"
cdu31a_port "Base I/O Address"
cdu31a_irq "IRQ"
cm206
block-major-32 cdrom
"Philips/LMS cm20 CDROM"
cm206 "Base I/O address, irq"
gscd
block-major-16 cdrom
"GoldStar R420 CDROM"
gscd "Base I/O Address"
isp16
# module, but dynamic block number so kerneld can't request it... (?)
unknown cdrom
"ISP16/MAD16/Mozart soundcard-based CDROM"
isp16_cdrom_base "Base I/O Address"
isp16_cdrom_irq "IRQ"
isp16_cdrom_dma "DMA Channel (0,3,5,6,7)"
mcd
block-major-23 cdrom
"Mitsumi CDROM"
mcd "Base I/O Address,irq"
mcdx
block-major-20 cdrom
"Mitsumi XA/Multisession CDROM"
mcdx "Base I/O Address,irq"
optcd
block-major-17 cdrom
"Optics Storage 8000 AT CDROM"
sbpcd
block-major-25 cdrom
"SoundBlaster Pro/Panasonic CDROM"
sbpcd "Base I/O Address"
sjcd
block-major-18 cdrom
"Sanyo CD-ROM device driver"
sjcd_base "Base I/O Address"
sonycd535
block-major-24 cdrom
"Sony CDU-535 CDROM"
sonycd535 "Base I/O Address"
agpart
video
"Intel i810 Graphics Controller"
|