Merge branch 'for-linus' of git://neil.brown.name/md
[linux-2.6] / include / linux / isa.h
1 /*
2  * ISA bus.
3  */
4
5 #ifndef __LINUX_ISA_H
6 #define __LINUX_ISA_H
7
8 #include <linux/device.h>
9 #include <linux/kernel.h>
10
11 struct isa_driver {
12         int (*match)(struct device *, unsigned int);
13         int (*probe)(struct device *, unsigned int);
14         int (*remove)(struct device *, unsigned int);
15         void (*shutdown)(struct device *, unsigned int);
16         int (*suspend)(struct device *, unsigned int, pm_message_t);
17         int (*resume)(struct device *, unsigned int);
18
19         struct device_driver driver;
20         struct device *devices;
21 };
22
23 #define to_isa_driver(x) container_of((x), struct isa_driver, driver)
24
25 #ifdef CONFIG_ISA
26 int isa_register_driver(struct isa_driver *, unsigned int);
27 void isa_unregister_driver(struct isa_driver *);
28 #else
29 static inline int isa_register_driver(struct isa_driver *d, unsigned int i)
30 {
31         return 0;
32 }
33
34 static inline void isa_unregister_driver(struct isa_driver *d)
35 {
36 }
37 #endif
38
39 #endif /* __LINUX_ISA_H */