gen_bd.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*
  2. * Header for Bestcomm General Buffer Descriptor tasks driver
  3. *
  4. *
  5. * Copyright (C) 2007 Sylvain Munaut <tnt@246tNt.com>
  6. * Copyright (C) 2006 AppSpec Computer Technologies Corp.
  7. * Jeff Gibbons <jeff.gibbons@appspec.com>
  8. *
  9. * This program is free software; you can redistribute it and/or modify it
  10. * under the terms of the GNU General Public License version 2 as published
  11. * by the Free Software Foundation.
  12. *
  13. *
  14. */
  15. #ifndef __BESTCOMM_GEN_BD_H__
  16. #define __BESTCOMM_GEN_BD_H__
  17. struct bcom_gen_bd {
  18. u32 status;
  19. u32 buf_pa;
  20. };
  21. extern struct bcom_task *
  22. bcom_gen_bd_rx_init(int queue_len, phys_addr_t fifo,
  23. int initiator, int ipr, int maxbufsize);
  24. extern int
  25. bcom_gen_bd_rx_reset(struct bcom_task *tsk);
  26. extern void
  27. bcom_gen_bd_rx_release(struct bcom_task *tsk);
  28. extern struct bcom_task *
  29. bcom_gen_bd_tx_init(int queue_len, phys_addr_t fifo,
  30. int initiator, int ipr);
  31. extern int
  32. bcom_gen_bd_tx_reset(struct bcom_task *tsk);
  33. extern void
  34. bcom_gen_bd_tx_release(struct bcom_task *tsk);
  35. /* PSC support utility wrappers */
  36. struct bcom_task * bcom_psc_gen_bd_rx_init(unsigned psc_num, int queue_len,
  37. phys_addr_t fifo, int maxbufsize);
  38. struct bcom_task * bcom_psc_gen_bd_tx_init(unsigned psc_num, int queue_len,
  39. phys_addr_t fifo);
  40. #endif /* __BESTCOMM_GEN_BD_H__ */