bcdc.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334
  1. /*
  2. * Copyright (c) 2013 Broadcom Corporation
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for any
  5. * purpose with or without fee is hereby granted, provided that the above
  6. * copyright notice and this permission notice appear in all copies.
  7. *
  8. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  9. * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  10. * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
  11. * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  12. * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
  13. * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
  14. * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  15. */
  16. #ifndef BRCMFMAC_BCDC_H
  17. #define BRCMFMAC_BCDC_H
  18. #ifdef CONFIG_BRCMFMAC_PROTO_BCDC
  19. int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr);
  20. void brcmf_proto_bcdc_detach_pre_delif(struct brcmf_pub *drvr);
  21. void brcmf_proto_bcdc_detach_post_delif(struct brcmf_pub *drvr);
  22. void brcmf_proto_bcdc_txflowblock(struct device *dev, bool state);
  23. void brcmf_proto_bcdc_txcomplete(struct device *dev, struct sk_buff *txp,
  24. bool success);
  25. struct brcmf_fws_info *drvr_to_fws(struct brcmf_pub *drvr);
  26. #else
  27. static inline int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr) { return 0; }
  28. static void brcmf_proto_bcdc_detach_pre_delif(struct brcmf_pub *drvr) {};
  29. static inline void brcmf_proto_bcdc_detach_post_delif(struct brcmf_pub *drvr) {}
  30. #endif
  31. #endif /* BRCMFMAC_BCDC_H */