This source file includes following definitions.
- ethif_probe
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 #include <linux/config.h>
31 #include <linux/netdevice.h>
32 #include <linux/errno.h>
33
34 #define NEXT_DEV NULL
35
36
37
38
39
40
41 extern int tulip_probe(struct device *dev);
42 extern int hp100_probe(struct device *dev);
43 extern int ultra_probe(struct device *dev);
44 extern int wd_probe(struct device *dev);
45 extern int el2_probe(struct device *dev);
46 extern int ne_probe(struct device *dev);
47 extern int hp_probe(struct device *dev);
48 extern int hp_plus_probe(struct device *dev);
49 extern int znet_probe(struct device *);
50 extern int express_probe(struct device *);
51 extern int eepro_probe(struct device *);
52 extern int el3_probe(struct device *);
53 extern int at1500_probe(struct device *);
54 extern int at1700_probe(struct device *);
55 extern int fmv18x_probe(struct device *);
56 extern int eth16i_probe(struct device *);
57 extern int depca_probe(struct device *);
58 extern int apricot_probe(struct device *);
59 extern int ewrk3_probe(struct device *);
60 extern int de4x5_probe(struct device *);
61 extern int el1_probe(struct device *);
62 #if defined(CONFIG_WAVELAN)
63 extern int wavelan_probe(struct device *);
64 #endif
65 extern int el16_probe(struct device *);
66 extern int elplus_probe(struct device *);
67 extern int ac3200_probe(struct device *);
68 extern int e2100_probe(struct device *);
69 extern int ni52_probe(struct device *);
70 extern int ni65_probe(struct device *);
71 extern int SK_init(struct device *);
72 extern int seeq8005_probe(struct device *);
73 extern int tc59x_probe(struct device *);
74 extern int dgrs_probe(struct device *);
75 extern int smc_init( struct device * );
76 extern int sparc_lance_probe(struct device *);
77 extern int atarilance_probe(struct device *);
78 extern int a2065_probe(struct device *);
79 extern int ariadne_probe(struct device *);
80 extern int hydra_probe(struct device *);
81
82
83 extern int atp_init(struct device *);
84 extern int de600_probe(struct device *);
85 extern int de620_probe(struct device *);
86
87 static int
88 ethif_probe(struct device *dev)
89 {
90 u_long base_addr = dev->base_addr;
91
92 if ((base_addr == 0xffe0) || (base_addr == 1))
93 return 1;
94
95 if (1
96 #ifdef CONFIG_DGRS
97 && dgrs_probe(dev)
98 #endif
99 #if defined(CONFIG_VORTEX)
100 && tc59x_probe(dev)
101 #endif
102 #if defined(CONFIG_SEEQ8005)
103 && seeq8005_probe(dev)
104 #endif
105 #if defined(CONFIG_DEC_ELCP)
106 && tulip_probe(dev)
107 #endif
108 #if defined(CONFIG_HP100)
109 && hp100_probe(dev)
110 #endif
111 #if defined(CONFIG_ULTRA)
112 && ultra_probe(dev)
113 #endif
114 #if defined(CONFIG_SMC9194)
115 && smc_init(dev)
116 #endif
117 #if defined(CONFIG_WD80x3) || defined(WD80x3)
118 && wd_probe(dev)
119 #endif
120 #if defined(CONFIG_EL2) || defined(EL2)
121 && el2_probe(dev)
122 #endif
123 #if defined(CONFIG_HPLAN) || defined(HPLAN)
124 && hp_probe(dev)
125 #endif
126 #if defined(CONFIG_HPLAN_PLUS)
127 && hp_plus_probe(dev)
128 #endif
129 #ifdef CONFIG_AC3200
130 && ac3200_probe(dev)
131 #endif
132 #ifdef CONFIG_E2100
133 && e2100_probe(dev)
134 #endif
135 #if defined(CONFIG_NE2000) || defined(NE2000)
136 && ne_probe(dev)
137 #endif
138 #ifdef CONFIG_AT1500
139 && at1500_probe(dev)
140 #endif
141 #ifdef CONFIG_AT1700
142 && at1700_probe(dev)
143 #endif
144 #ifdef CONFIG_FMV18X
145 && fmv18x_probe(dev)
146 #endif
147 #ifdef CONFIG_ETH16I
148 && eth16i_probe(dev)
149 #endif
150 #ifdef CONFIG_EL3
151 && el3_probe(dev)
152 #endif
153 #ifdef CONFIG_ZNET
154 && znet_probe(dev)
155 #endif
156 #ifdef CONFIG_EEXPRESS
157 && express_probe(dev)
158 #endif
159 #ifdef CONFIG_EEXPRESS_PRO
160 && eepro_probe(dev)
161 #endif
162 #ifdef CONFIG_DEPCA
163 && depca_probe(dev)
164 #endif
165 #ifdef CONFIG_EWRK3
166 && ewrk3_probe(dev)
167 #endif
168 #ifdef CONFIG_DE4X5
169 && de4x5_probe(dev)
170 #endif
171 #ifdef CONFIG_APRICOT
172 && apricot_probe(dev)
173 #endif
174 #ifdef CONFIG_EL1
175 && el1_probe(dev)
176 #endif
177 #if defined(CONFIG_WAVELAN)
178 && wavelan_probe(dev)
179 #endif
180 #ifdef CONFIG_EL16
181 && el16_probe(dev)
182 #endif
183 #ifdef CONFIG_ELPLUS
184 && elplus_probe(dev)
185 #endif
186 #ifdef CONFIG_DE600
187 && de600_probe(dev)
188 #endif
189 #ifdef CONFIG_DE620
190 && de620_probe(dev)
191 #endif
192 #if defined(CONFIG_SK_G16)
193 && SK_init(dev)
194 #endif
195 #ifdef CONFIG_NI52
196 && ni52_probe(dev)
197 #endif
198 #ifdef CONFIG_ATARILANCE
199 && atarilance_probe(dev)
200 #endif
201 #ifdef CONFIG_A2065
202 && a2065_probe(dev)
203 #endif
204 #ifdef CONFIG_ARIADNE
205 && ariadne_probe(dev)
206 #endif
207 #ifdef CONFIG_HYDRA
208 && hydra_probe(dev)
209 #endif
210 #ifdef CONFIG_SUNLANCE
211 && sparc_lance_probe(dev)
212 #endif
213 && 1 ) {
214 return 1;
215 }
216 return 0;
217 }
218
219 #ifdef CONFIG_SDLA
220 extern int sdla_init(struct device *);
221 static struct device sdla0_dev = { "sdla0", 0, 0, 0, 0, 0, 0, 0, 0, 0, NEXT_DEV, sdla_init, };
222
223 # undef NEXT_DEV
224 # define NEXT_DEV (&sdla0_dev)
225 #endif
226
227
228
229 #ifdef CONFIG_DLCI
230 extern int dlci_init(struct device *);
231 static struct device dlci_dev = { "dlci", 0, 0, 0, 0, 0, 0, 0, 0, 0, NEXT_DEV, dlci_init, };
232 # undef NEXT_DEV
233 # define NEXT_DEV (&dlci_dev)
234 #endif
235
236 #ifdef CONFIG_NETROM
237 extern int nr_init(struct device *);
238
239 static struct device nr3_dev = { "nr3", 0, 0, 0, 0, 0, 0, 0, 0, 0, NEXT_DEV, nr_init, };
240 static struct device nr2_dev = { "nr2", 0, 0, 0, 0, 0, 0, 0, 0, 0, &nr3_dev, nr_init, };
241 static struct device nr1_dev = { "nr1", 0, 0, 0, 0, 0, 0, 0, 0, 0, &nr2_dev, nr_init, };
242 static struct device nr0_dev = { "nr0", 0, 0, 0, 0, 0, 0, 0, 0, 0, &nr1_dev, nr_init, };
243
244 # undef NEXT_DEV
245 # define NEXT_DEV (&nr0_dev)
246 #endif
247
248
249 #ifdef CONFIG_ATP
250 static struct device atp_dev = {
251 "atp0", 0, 0, 0, 0, 0, 0, 0, 0, 0, NEXT_DEV, atp_init, };
252 # undef NEXT_DEV
253 # define NEXT_DEV (&atp_dev)
254 #endif
255
256 #ifdef CONFIG_ARCNET
257 extern int arcnet_probe(struct device *dev);
258 static struct device arcnet_dev = {
259 "arc0", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, arcnet_probe, };
260 # undef NEXT_DEV
261 # define NEXT_DEV (&arcnet_dev)
262 #endif
263
264
265 #ifndef ETH0_ADDR
266 # define ETH0_ADDR 0
267 #endif
268 #ifndef ETH0_IRQ
269 # define ETH0_IRQ 0
270 #endif
271
272
273
274
275 static struct device eth3_dev = {
276 "eth3", 0,0,0,0,0xffe0 , 0,0,0,0, NEXT_DEV, ethif_probe };
277 static struct device eth2_dev = {
278 "eth2", 0,0,0,0,0xffe0 , 0,0,0,0, ð3_dev, ethif_probe };
279 static struct device eth1_dev = {
280 "eth1", 0,0,0,0,0xffe0 , 0,0,0,0, ð2_dev, ethif_probe };
281
282 static struct device eth0_dev = {
283 "eth0", 0, 0, 0, 0, ETH0_ADDR, ETH0_IRQ, 0, 0, 0, ð1_dev, ethif_probe };
284
285 # undef NEXT_DEV
286 # define NEXT_DEV (ð0_dev)
287
288 #if defined(PLIP) || defined(CONFIG_PLIP)
289 extern int plip_init(struct device *);
290 static struct device plip2_dev = {
291 "plip2", 0, 0, 0, 0, 0x278, 2, 0, 0, 0, NEXT_DEV, plip_init, };
292 static struct device plip1_dev = {
293 "plip1", 0, 0, 0, 0, 0x378, 7, 0, 0, 0, &plip2_dev, plip_init, };
294 static struct device plip0_dev = {
295 "plip0", 0, 0, 0, 0, 0x3BC, 5, 0, 0, 0, &plip1_dev, plip_init, };
296 # undef NEXT_DEV
297 # define NEXT_DEV (&plip0_dev)
298 #endif
299
300 #if defined(SLIP) || defined(CONFIG_SLIP)
301
302
303 extern int slip_init_ctrl_dev(struct device *);
304 static struct device slip_bootstrap = {
305 "slip_proto", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, slip_init_ctrl_dev, };
306 #undef NEXT_DEV
307 #define NEXT_DEV (&slip_bootstrap)
308 #endif
309
310 #if defined(CONFIG_STRIP)
311 extern int strip_init_ctrl_dev(struct device *);
312 static struct device strip_bootstrap = {
313 "strip_proto", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, strip_init_ctrl_dev, };
314 #undef NEXT_DEV
315 #define NEXT_DEV (&strip_bootstrap)
316 #endif
317
318 #if defined(CONFIG_PPP)
319 extern int ppp_init(struct device *);
320 static struct device ppp_bootstrap = {
321 "ppp_proto", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, ppp_init, };
322 #undef NEXT_DEV
323 #define NEXT_DEV (&ppp_bootstrap)
324 #endif
325
326 #ifdef CONFIG_DUMMY
327 extern int dummy_init(struct device *dev);
328 static struct device dummy_dev = {
329 "dummy", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, dummy_init, };
330 # undef NEXT_DEV
331 # define NEXT_DEV (&dummy_dev)
332 #endif
333
334 #ifdef CONFIG_EQUALIZER
335 extern int eql_init(struct device *dev);
336 struct device eql_dev = {
337 "eql",
338
339 0x0, 0x0, 0x0, 0x0,
340 0,
341 0,
342 0, 0, 0,
343 NEXT_DEV,
344 eql_init
345 };
346 # undef NEXT_DEV
347 # define NEXT_DEV (&eql_dev)
348 #endif
349
350 #ifdef CONFIG_IBMTR
351
352 extern int tok_probe(struct device *dev);
353 static struct device ibmtr_dev1 = {
354 "tr1",
355 0x0,
356 0x0,
357 0x0,
358 0x0,
359 0xa24,
360 0,
361 0, 0, 0,
362 NEXT_DEV,
363 tok_probe
364 };
365 # undef NEXT_DEV
366 # define NEXT_DEV (&ibmtr_dev1)
367
368
369 static struct device ibmtr_dev0 = {
370 "tr0",
371 0x0,
372 0x0,
373 0x0,
374 0x0,
375 0xa20,
376 0,
377 0, 0, 0,
378 NEXT_DEV,
379 tok_probe
380 };
381 # undef NEXT_DEV
382 # define NEXT_DEV (&ibmtr_dev0)
383
384 #endif
385 #ifdef CONFIG_NET_IPIP
386 #ifdef CONFIG_IP_FORWARD
387 extern int tunnel_init(struct device *);
388
389 static struct device tunnel_dev1 =
390 {
391 "tunl1",
392 0x0,
393 0x0,
394 0x0,
395 0x0,
396 0x0,
397 0,
398 0, 0, 0,
399 NEXT_DEV,
400 tunnel_init
401 };
402
403 static struct device tunnel_dev0 =
404 {
405 "tunl0",
406 0x0,
407 0x0,
408 0x0,
409 0x0,
410 0x0,
411 0,
412 0, 0, 0,
413 &tunnel_dev1,
414 tunnel_init
415 };
416 # undef NEXT_DEV
417 # define NEXT_DEV (&tunnel_dev0)
418
419 #endif
420 #endif
421
422 #ifdef CONFIG_AP1000
423 extern int apfddi_init(struct device *dev);
424 static struct device fddi_dev = {
425 "fddi", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, apfddi_init };
426 # undef NEXT_DEV
427 # define NEXT_DEV (&fddi_dev)
428
429 extern int bif_init(struct device *dev);
430 static struct device bif_dev = {
431 "bif", 0x0, 0x0, 0x0, 0x0, 0, 0, 0, 0, 0, NEXT_DEV, bif_init };
432 # undef NEXT_DEV
433 # define NEXT_DEV (&bif_dev)
434
435 #endif
436
437 extern int loopback_init(struct device *dev);
438 struct device loopback_dev = {
439 "lo",
440 0x0,
441 0x0,
442 0x0,
443 0x0,
444 0,
445 0,
446 0, 0, 0,
447 NEXT_DEV,
448 loopback_init
449 };
450
451 struct device *dev_base = &loopback_dev;