special usb hub handling, IDE disks, and retries all over the place
[linux-2.4.git] / drivers / atm / atmdev_init.c
1 /* drivers/atm/atmdev_init.c - ATM device driver initialization */
2  
3 /* Written 1995-2000 by Werner Almesberger, EPFL LRC/ICA */
4  
5
6 #include <linux/config.h>
7 #include <linux/init.h>
8
9
10 #ifdef CONFIG_ATM_ZATM
11 extern int zatm_detect(void);
12 #endif
13 #ifdef CONFIG_ATM_AMBASSADOR
14 extern int amb_detect(void);
15 #endif
16 #ifdef CONFIG_ATM_HORIZON
17 extern int hrz_detect(void);
18 #endif
19 #ifdef CONFIG_ATM_FORE200E
20 extern int fore200e_detect(void);
21 #endif
22 #ifdef CONFIG_ATM_LANAI
23 extern int lanai_detect(void);
24 #endif
25
26
27 /*
28  * For historical reasons, atmdev_init returns the number of devices found.
29  * Note that some detections may not go via atmdev_init (e.g. eni.c), so this
30  * number is meaningless.
31  */
32
33 int __init atmdev_init(void)
34 {
35         int devs;
36
37         devs = 0;
38 #ifdef CONFIG_ATM_ZATM
39         devs += zatm_detect();
40 #endif
41 #ifdef CONFIG_ATM_AMBASSADOR
42         devs += amb_detect();
43 #endif
44 #ifdef CONFIG_ATM_HORIZON
45         devs += hrz_detect();
46 #endif
47 #ifdef CONFIG_ATM_FORE200E
48         devs += fore200e_detect();
49 #endif
50 #ifdef CONFIG_ATM_LANAI
51         devs += lanai_detect();
52 #endif
53         return devs;
54 }