OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [uclinux/] [uClinux-2.0.x/] [Documentation/] [networking/] [net-modules.txt] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 199 simons
Wed 2-Aug-95  
2
 
3
                Linux network driver modules
4
 
5
        Do not mistake this to "README.modules" at the top-level
6
        directory!  That document tells about modules in general, while
7
        this one tells only about network device driver modules.
8
 
9
        This is a potpourri of INSMOD-time(*) configuration options
10
        (if such exists) and their default values of various modules
11
        on Linux network drivers collection.
12
 
13
        Some modules have also hidden (= non-documented) tunable values.
14
        Choice of not documenting them is based on general belief, that
15
        the less user needs to know, the better.  (There are things that
16
        driver developer can use, others should not confuse themselves.)
17
 
18
        In many cases it is highly preferred that insmoding is done
19
        ONLY with defining an explicit address for the card, AND BY
20
        NOT USING AUTO-PROBING!
21
 
22
        Now most cards have some explicitly defined base address, they
23
        are compiled with (to avoid auto-probing, among other things).
24
        If that compiled value does not match your actual configuration,
25
        do use  "io=0xXXX" -parameter for the  insmod, and give there
26
        a value matching your environment.
27
 
28
        If you are adventurous, you can ask the driver to autoprobe
29
        by using "io=0" parameter, however it is potentially dangerous
30
        thing to do in a live system.  (If you don't know where the
31
        card is located, you can try autoprobing, and after possible
32
        crash recovery, insmod with proper IO-address..)
33
 
34
        --------------------------
35
        (*)     "INSMOD-time" means when you load module with
36
                /sbin/insmod  you can feed it optional parameters.
37
                See "man insmod".
38
        --------------------------
39
 
40
 
41
        8390 based Network Modules              (Paul Gortmaker, Nov 12, 1995)
42
        --------------------------
43
 
44
(Includes: smc-ultra, ne, wd, 3c503, hp, hp-plus, e2100 and ac3200)
45
 
46
The 8390 series of network drivers now support multiple card systems without
47
reloading the same module multiple times (memory efficient!) This is done by
48
specifying multiple comma separated values, such as:
49
 
50
        insmod 3c503.o io=0x280,0x300,0x330,0x350  xcvr=0,1,0,1
51
 
52
The above would have the one module controlling four 3c503 cards, with card 2
53
and 4 using external transceivers. The "insmod" manual describes the usage
54
of comma separated value lists.
55
 
56
It is *STRONGLY RECOMMENDED* that you supply "io=" instead of autoprobing.
57
If an "io=" argument is not supplied, then the ISA drivers will complain
58
about autoprobing being not recommended, and begrudgingly autoprobe for
59
a *SINGLE CARD ONLY* -- if you want to use multiple cards you *have* to
60
supply an "io=0xNNN,0xQQQ,..." argument.
61
 
62
The ne module is an exception to the above. A NE2000 is essentially an
63
8390 chip, some bus glue and some RAM. Because of this, the ne probe is
64
more invasive than the rest, and so at boot we make sure the ne probe is
65
done last of all the 8390 cards (so that it won't trip over other 8390 based
66
cards) With modules we can't ensure that all other non-ne 8390 cards have
67
already been found. Because of this, the ne module REQUIRES an "io=0xNNN"
68
argument passed in via insmod. It will refuse to autoprobe.
69
 
70
It is also worth noting that auto-IRQ probably isn't as reliable during
71
the flurry of interrupt activity on a running machine. Cards such as the
72
ne2000 that can't get the IRQ setting from an EEPROM or configuration
73
register are probably best supplied with an "irq=M" argument as well.
74
 
75
 
76
----------------------------------------------------------------------
77
Card/Module List - Configurable Parameters and Default Values
78
----------------------------------------------------------------------
79
 
80
3c501.c:
81
        io  = 0x280     IO base address
82
        irq = 5         IRQ
83
        (Probes ports:  0x280, 0x300)
84
 
85
3c503.c:
86
        io = 0          (It will complain if you don't supply an "io=0xNNN")
87
        irq = 0         (IRQ software selected by driver using autoIRQ)
88
        xcvr = 0        (Use xcvr=1 to select external transceiver.)
89
        (Probes ports: 0x300, 0x310, 0x330, 0x350, 0x250, 0x280, 0x2A0, 0x2E0)
90
 
91
3c505.c:
92
        io = 0x300
93
        irq = 0
94
        (Probes ports: 0x300, 0x280, 0x310)
95
 
96
3c507.c:
97
        io = 0x300
98
        irq = 0
99
        (Probes ports: 0x300, 0x320, 0x340, 0x280)
100
 
101
3c509.c:
102
        io = 0
103
        irq = 0
104
        ( Module load-time probing Works reliably only on EISA, ISA ID-PROBE
105
          IS NOT RELIABLE!  Compile this driver statically into kernel for
106
          now, if you need it auto-probing on an ISA-bus machine. )
107
 
108
8390.c:
109
        (No public options, several other modules need this one)
110
 
111
ac3200.c:
112
        io = 0          (Checks 0x1000 to 0x8fff in 0x1000 intervals)
113
        irq = 0         (Read from config register)
114
        (EISA probing..)
115
 
116
apricot.c:
117
        io = 0x300  (Can't be altered!)
118
        irq = 10
119
 
120
arcnet.c:
121
        io = 0
122
        irqnum = 0
123
        shmem = 0
124
        num = 0
125
        DO SET THESE MANUALLY AT INSMOD!
126
        (When probing, looks at the following possible addresses:
127
         Suggested ones:
128
                0x300, 0x2E0, 0x2F0, 0x2D0
129
         Other ones:
130
                0x200, 0x210, 0x220, 0x230, 0x240, 0x250, 0x260, 0x270,
131
                0x280, 0x290, 0x2A0, 0x2B0, 0x2C0,
132
                       0x310, 0x320, 0x330, 0x340, 0x350, 0x360, 0x370,
133
                0x380, 0x390, 0x3A0,                      0x3E0, 0x3F0  )
134
 
135
at1700.c:
136
        io = 0x260
137
        irq = 0
138
        (Probes ports: 0x260, 0x280, 0x2A0, 0x240, 0x340, 0x320, 0x380, 0x300)
139
 
140
atp.c: *Not modularized*
141
        (Probes ports: 0x378, 0x278, 0x3BC;
142
         fixed IRQs: 5 and 7                    )
143
 
144
de4x5.c:
145
        io = 0x000b
146
        irq = 10
147
        is_not_dec = 0  -- For non-DEC card using DEC 21040/21041/21140 chip, set this to 1
148
        (EISA, and PCI probing)
149
 
150
de600.c:
151
        de600_debug = 0
152
        (On port 0x378, irq 7 -- lpt1;  compile time configurable)
153
 
154
de620.c:
155
        bnc = 0, utp = 0  <-- Force media by setting either.
156
        io = 0x378      (also compile-time configurable)
157
        irq = 7
158
 
159
depca.c:
160
        io = 0x200
161
        irq = 7
162
        (Probes ports:  ISA:  0x300, 0x200;
163
                        EISA: 0x0c00            )
164
 
165
dummy.c:
166
        No options
167
 
168
e2100.c:
169
        io = 0          (It will complain if you don't supply an "io=0xNNN")
170
        irq = 0         (IRQ software selected by driver)
171
        mem = 0         (Override default shared memory start of 0xd0000)
172
        xcvr = 0        (Use xcvr=1 to select external transceiver.)
173
        (Probes ports: 0x300, 0x280, 0x380, 0x220)
174
 
175
eepro.c:
176
        io = 0x200
177
        irq = 0
178
        (Probes ports: 0x200, 0x240, 0x280, 0x2C0, 0x300, 0x320, 0x340, 0x360)
179
 
180
eexpress.c:
181
        io = 0x300
182
        irq = 0         (IRQ value read from EEPROM)
183
        (Probes ports: 0x300, 0x270, 0x320, 0x340)
184
 
185
eql.c:
186
        (No parameters)
187
 
188
ewrk3.c:
189
        io = 0x300
190
        irq = 5
191
        (With module no autoprobing!
192
         On EISA-bus does EISA probing.
193
         Static linkage probes ports on ISA bus:
194
                0x100, 0x120, 0x140, 0x160, 0x180, 0x1A0, 0x1C0,
195
                0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0,
196
                0x300,        0x340, 0x360, 0x380, 0x3A0, 0x3C0)
197
 
198
hp-plus.c:
199
        io = 0          (It will complain if you don't supply an "io=0xNNN")
200
        irq = 0         (IRQ read from configuration register)
201
        (Probes ports: 0x200, 0x240, 0x280, 0x2C0, 0x300, 0x320, 0x340)
202
 
203
hp.c:
204
        io = 0          (It will complain if you don't supply an "io=0xNNN")
205
        irq = 0         (IRQ software selected by driver using autoIRQ)
206
        (Probes ports: 0x300, 0x320, 0x340, 0x280, 0x2C0, 0x200, 0x240)
207
 
208
hp100.c:
209
        hp100_port = 0 (IO-base address)
210
        (Does EISA-probing, if on EISA-slot;
211
         On ISA-bus probes all ports from 0x100 thru to 0x3E0
212
         in increments of 0x020)
213
 
214
ibmtr.c:
215
        io = 0xA20
216
        (Probes ports: 0xA20, 0xA24 -- Ok, 0x220, 0x224, but IBM style..)
217
 
218
lance.c: *Not modularized*
219
        (PCI, and ISA probing; "CONFIG_PCI" needed for PCI support)
220
        (Probes ISA ports: 0x300, 0x320, 0x340, 0x360)
221
 
222
loopback.c: *Static kernel component*
223
 
224
ne.c:
225
        io = 0          (Explicitly *requires* an "io=0xNNN" value)
226
        irq = 0         (Tries to determine configured IRQ via autoIRQ)
227
        (Probes ports: 0x300, 0x280, 0x320, 0x340, 0x360)
228
 
229
net_init.c: *Static kernel component*
230
 
231
ni52.c: *Not modularized*
232
        (Probes ports:  0x300, 0x280, 0x360, 0x320, 0x340
233
                mems:   0xD0000, 0xD2000, 0xC8000, 0xCA000,
234
                        0xD4000, 0xD6000, 0xD8000 )
235
 
236
ni65.c: *Not modularized*  **16MB MEMORY BARRIER BUG**
237
        (Probes ports:  0x300, 0x320, 0x340, 0x360)
238
 
239
pi2.c:  *Not modularized* (well, NON-STANDARD modularization!)
240
        Only one card supported at this time.
241
        (Probes ports: 0x380, 0x300, 0x320, 0x340, 0x360, 0x3A0)
242
 
243
plip.c:
244
        io = 0
245
        irq = 0         (by default, uses IRQ 5 for port at 0x3bc, IRQ 7
246
                        for port at 0x378, and IRQ 2 for port at 0x278)
247
        (Probes ports: 0x278, 0x378, 0x3bc)
248
 
249
ppp.c:
250
        No options (ppp-2.2+ has some, this is based on non-dynamic
251
        version from ppp-2.1.2d)
252
 
253
seeq8005.c: *Not modularized*
254
        (Probes ports: 0x300, 0x320, 0x340, 0x360)
255
 
256
sk_g16.c: *Not modularized*
257
        (Probes ports: 0x100, 0x180, 0x208, 0x220m 0x288, 0x320, 0x328, 0x390)
258
 
259
skeleton.c: *Skeleton*
260
 
261
slhc.c:
262
        No configuration parameters
263
 
264
slip.c:
265
        slip_maxdev = 256 (default value from SL_NRUNIT on slip.h)
266
 
267
 
268
smc-ultra.c:
269
        io = 0          (It will complain if you don't supply an "io=0xNNN")
270
        irq = 0         (IRQ val. read from EEPROM)
271
        (Probes ports:  0x200, 0x220, 0x240, 0x280, 0x300, 0x340, 0x380)
272
 
273
tulip.c: *Partial modularization*
274
        (init-time memory allocation makes problems..)
275
 
276
tunnel.c:
277
        No insmod parameters
278
 
279
wavelan.c:
280
        io = 0x390      (Settable, but change not recommended)
281
        irq = 0         (Not honoured, if changed..)
282
 
283
wd.c:
284
        io = 0          (It will complain if you don't supply an "io=0xNNN")
285
        irq = 0         (IRQ val. read from EEPROM, ancient cards use autoIRQ)
286
        mem = 0         (Force shared-memory on address 0xC8000, or whatever..)
287
        mem_end = 0     (Force non-std. mem. size via supplying mem_end val.)
288
                        (eg. for 32k WD8003EBT, use mem=0xd0000 mem_end=0xd8000)
289
        (Probes ports:  0x300, 0x280, 0x380, 0x240)
290
 
291
znet.c: *Not modularized*
292
        (Only one device on  Zenith Z-Note (notebook?) systems,
293
         configuration information from (EE)PROM)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.