Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
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 /* CONFIG_B43_SDIO */
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 /* CONFIG_B43_SDIO */
0046 #endif /* B43_SDIO_H_ */