1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef B43_SDIO_H_ |
3 | #define B43_SDIO_H_ |
4 | |
5 | #include <linux/ssb/ssb.h> |
6 | |
7 | struct b43_wldev; |
8 | |
9 | |
10 | #ifdef CONFIG_B43_SDIO |
11 | |
12 | struct b43_sdio { |
13 | struct ssb_bus ssb; |
14 | void *irq_handler_opaque; |
15 | void (*irq_handler)(struct b43_wldev *dev); |
16 | }; |
17 | |
18 | int b43_sdio_request_irq(struct b43_wldev *dev, |
19 | void (*handler)(struct b43_wldev *dev)); |
20 | void b43_sdio_free_irq(struct b43_wldev *dev); |
21 | |
22 | int b43_sdio_init(void); |
23 | void b43_sdio_exit(void); |
24 | |
25 | |
26 | #else /* CONFIG_B43_SDIO */ |
27 | |
28 | |
29 | static inline int b43_sdio_request_irq(struct b43_wldev *dev, |
30 | void (*handler)(struct b43_wldev *dev)) |
31 | { |
32 | return -ENODEV; |
33 | } |
34 | static inline void b43_sdio_free_irq(struct b43_wldev *dev) |
35 | { |
36 | } |
37 | static inline int b43_sdio_init(void) |
38 | { |
39 | return 0; |
40 | } |
41 | static inline void b43_sdio_exit(void) |
42 | { |
43 | } |
44 | |
45 | #endif /* CONFIG_B43_SDIO */ |
46 | #endif /* B43_SDIO_H_ */ |
47 | |