sdio.h 833 B

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