0001
0002 #ifndef B43_SDIO_H_
0003 #define B43_SDIO_H_
0004
0005 #include <linux/ssb/ssb.h>
0006
0007 struct b43_wldev;
0008
0009
0010 #ifdef CONFIG_B43_SDIO
0011
0012 struct b43_sdio {
0013 struct ssb_bus ssb;
0014 void *irq_handler_opaque;
0015 void (*irq_handler)(struct b43_wldev *dev);
0016 };
0017
0018 int b43_sdio_request_irq(struct b43_wldev *dev,
0019 void (*handler)(struct b43_wldev *dev));
0020 void b43_sdio_free_irq(struct b43_wldev *dev);
0021
0022 int b43_sdio_init(void);
0023 void b43_sdio_exit(void);
0024
0025
0026 #else
0027
0028
0029 static inline int b43_sdio_request_irq(struct b43_wldev *dev,
0030 void (*handler)(struct b43_wldev *dev))
0031 {
0032 return -ENODEV;
0033 }
0034 static inline void b43_sdio_free_irq(struct b43_wldev *dev)
0035 {
0036 }
0037 static inline int b43_sdio_init(void)
0038 {
0039 return 0;
0040 }
0041 static inline void b43_sdio_exit(void)
0042 {
0043 }
0044
0045 #endif
0046 #endif