qed: Add srq core support for RoCE and iWARP
This patch adds support for configuring SRQ and provides the necessary APIs for rdma upper layer driver (qedr) to enable the SRQ feature. Signed-off-by: Michal Kalderon <michal.kalderon@cavium.com> Signed-off-by: Ariel Elior <ariel.elior@cavium.com> Signed-off-by: Yuval Bason <yuval.bason@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7a9ee41b83
commit
39dbc646fd
9 changed files with 234 additions and 8 deletions
|
|
@ -485,7 +485,9 @@ enum qed_iwarp_event_type {
|
|||
QED_IWARP_EVENT_ACTIVE_MPA_REPLY,
|
||||
QED_IWARP_EVENT_LOCAL_ACCESS_ERROR,
|
||||
QED_IWARP_EVENT_REMOTE_OPERATION_ERROR,
|
||||
QED_IWARP_EVENT_TERMINATE_RECEIVED
|
||||
QED_IWARP_EVENT_TERMINATE_RECEIVED,
|
||||
QED_IWARP_EVENT_SRQ_LIMIT,
|
||||
QED_IWARP_EVENT_SRQ_EMPTY,
|
||||
};
|
||||
|
||||
enum qed_tcp_ip_version {
|
||||
|
|
@ -646,6 +648,14 @@ struct qed_rdma_ops {
|
|||
int (*rdma_alloc_tid)(void *rdma_cxt, u32 *itid);
|
||||
void (*rdma_free_tid)(void *rdma_cxt, u32 itid);
|
||||
|
||||
int (*rdma_create_srq)(void *rdma_cxt,
|
||||
struct qed_rdma_create_srq_in_params *iparams,
|
||||
struct qed_rdma_create_srq_out_params *oparams);
|
||||
int (*rdma_destroy_srq)(void *rdma_cxt,
|
||||
struct qed_rdma_destroy_srq_in_params *iparams);
|
||||
int (*rdma_modify_srq)(void *rdma_cxt,
|
||||
struct qed_rdma_modify_srq_in_params *iparams);
|
||||
|
||||
int (*ll2_acquire_connection)(void *rdma_cxt,
|
||||
struct qed_ll2_acquire_data *data);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue