diff options
author | Naresh Gottumukkala <bgottumukkala@emulex.com> | 2013-08-26 15:27:39 +0530 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2013-09-02 21:17:48 -0700 |
commit | 7c33880c3cb2cda816d4d64852c6a81018b9bc1f (patch) | |
tree | 517ab6a470642f8c07f59a7eb734c58cecf80c10 /drivers/infiniband/hw/ocrdma/ocrdma_sli.h | |
parent | 43a6b4025c79ded5b44e58ba0db97c29dd38d718 (diff) |
RDMA/ocrdma: Add support for fast register work requests (FRWR)
Also get the max_srq value from query_config mailbox response.
Signed-off-by: Naresh Gottumukkala <bgottumukkala@emulex.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/ocrdma/ocrdma_sli.h')
-rw-r--r-- | drivers/infiniband/hw/ocrdma/ocrdma_sli.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/ocrdma/ocrdma_sli.h b/drivers/infiniband/hw/ocrdma/ocrdma_sli.h index 0184009060db..6cf5a96f38c6 100644 --- a/drivers/infiniband/hw/ocrdma/ocrdma_sli.h +++ b/drivers/infiniband/hw/ocrdma/ocrdma_sli.h @@ -91,6 +91,7 @@ enum { #define OCRDMA_MAX_QP 2048 #define OCRDMA_MAX_CQ 2048 +#define OCRDMA_MAX_STAG 2048 enum { OCRDMA_DB_RQ_OFFSET = 0xE0, @@ -1564,6 +1565,7 @@ enum OCRDMA_WQE_OPCODE { OCRDMA_SEND = 0x00, OCRDMA_CMP_SWP = 0x14, OCRDMA_BIND_MW = 0x10, + OCRDMA_FR_MR = 0x11, OCRDMA_RESV1 = 0x0A, OCRDMA_LKEY_INV = 0x15, OCRDMA_FETCH_ADD = 0x13, @@ -1610,6 +1612,23 @@ struct ocrdma_ewqe_ud_hdr { u32 rsvd; }; +#define OCRDMA_MAX_FR_PBES 11 +struct ocrdma_fr_pbe { + u32 pa_hi; + u32 pa_lo; +}; + +/* extended wqe followed by hdr_wqe for Fast Memory register */ +struct ocrdma_ewqe_fr { + u32 va_hi; + u32 va_lo; + u32 fbo_hi; + u32 fbo_lo; + u32 size_sge; + u32 num_sges; + struct ocrdma_fr_pbe pbe[0]; +}; + struct ocrdma_eth_basic { u8 dmac[6]; u8 smac[6]; |