bfi_uf.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
  3. * All rights reserved
  4. * www.brocade.com
  5. *
  6. * Linux driver for Brocade Fibre Channel Host Bus Adapter.
  7. *
  8. * This program is free software; you can redistribute it and/or modify it
  9. * under the terms of the GNU General Public License (GPL) Version 2 as
  10. * published by the Free Software Foundation
  11. *
  12. * This program is distributed in the hope that it will be useful, but
  13. * WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. * General Public License for more details.
  16. */
  17. #ifndef __BFI_UF_H__
  18. #define __BFI_UF_H__
  19. #include "bfi.h"
  20. #pragma pack(1)
  21. enum bfi_uf_h2i {
  22. BFI_UF_H2I_BUF_POST = 1,
  23. };
  24. enum bfi_uf_i2h {
  25. BFI_UF_I2H_FRM_RCVD = BFA_I2HM(1),
  26. };
  27. #define BFA_UF_MAX_SGES 2
  28. struct bfi_uf_buf_post_s {
  29. struct bfi_mhdr_s mh; /* Common msg header */
  30. u16 buf_tag; /* buffer tag */
  31. u16 buf_len; /* total buffer length */
  32. struct bfi_sge_s sge[BFA_UF_MAX_SGES]; /* buffer DMA SGEs */
  33. };
  34. struct bfi_uf_frm_rcvd_s {
  35. struct bfi_mhdr_s mh; /* Common msg header */
  36. u16 buf_tag; /* buffer tag */
  37. u16 rsvd;
  38. u16 frm_len; /* received frame length */
  39. u16 xfr_len; /* tranferred length */
  40. };
  41. #pragma pack()
  42. #endif /* __BFI_UF_H__ */