upload tizen1.0 source
[kernel/linux-2.6.36.git] / drivers / scsi / bfa / include / bfi / bfi_uf.h
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
18 #ifndef __BFI_UF_H__
19 #define __BFI_UF_H__
20
21 #include "bfi.h"
22
23 #pragma pack(1)
24
25 enum bfi_uf_h2i {
26         BFI_UF_H2I_BUF_POST = 1,
27 };
28
29 enum bfi_uf_i2h {
30         BFI_UF_I2H_FRM_RCVD = BFA_I2HM(1),
31 };
32
33 #define BFA_UF_MAX_SGES 2
34
35 struct bfi_uf_buf_post_s {
36         struct bfi_mhdr_s  mh;          /*  Common msg header           */
37         u16        buf_tag;     /*  buffer tag                  */
38         u16        buf_len;     /*  total buffer length */
39         struct bfi_sge_s   sge[BFA_UF_MAX_SGES]; /*  buffer DMA SGEs    */
40 };
41
42 struct bfi_uf_frm_rcvd_s {
43         struct bfi_mhdr_s  mh;          /*  Common msg header           */
44         u16        buf_tag;     /*  buffer tag                  */
45         u16        rsvd;
46         u16        frm_len;     /*  received frame length       */
47         u16        xfr_len;     /*  tranferred length           */
48 };
49
50 #pragma pack()
51
52 #endif /* __BFI_UF_H__ */