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