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