rfkill: rewrite
[safe/jmp/linux-2.6] / drivers / net / wireless / b43legacy / rfkill.h
1 #ifndef B43legacy_RFKILL_H_
2 #define B43legacy_RFKILL_H_
3
4 struct b43legacy_wldev;
5
6 #ifdef CONFIG_B43LEGACY_RFKILL
7
8 #include <linux/rfkill.h>
9
10
11
12 struct b43legacy_rfkill {
13         /* The RFKILL subsystem data structure */
14         struct rfkill *rfkill;
15         /* Did initialization succeed? Used for freeing. */
16         bool registered;
17         /* The unique name of this rfkill switch */
18         char name[sizeof("b43legacy-phy4294967295")];
19 };
20
21 /* The init function returns void, because we are not interested
22  * in failing the b43 init process when rfkill init failed. */
23 void b43legacy_rfkill_init(struct b43legacy_wldev *dev);
24 void b43legacy_rfkill_exit(struct b43legacy_wldev *dev);
25
26 const char *b43legacy_rfkill_led_name(struct b43legacy_wldev *dev);
27
28
29 #else /* CONFIG_B43LEGACY_RFKILL */
30 /* No RFKILL support. */
31
32 struct b43legacy_rfkill {
33         /* empty */
34 };
35
36 static inline void b43legacy_rfkill_alloc(struct b43legacy_wldev *dev)
37 {
38 }
39 static inline void b43legacy_rfkill_free(struct b43legacy_wldev *dev)
40 {
41 }
42 static inline void b43legacy_rfkill_init(struct b43legacy_wldev *dev)
43 {
44 }
45 static inline void b43legacy_rfkill_exit(struct b43legacy_wldev *dev)
46 {
47 }
48 static inline char *b43legacy_rfkill_led_name(struct b43legacy_wldev *dev)
49 {
50         return NULL;
51 }
52
53 #endif /* CONFIG_B43LEGACY_RFKILL */
54
55 #endif /* B43legacy_RFKILL_H_ */