#ifndef _SYS_IB_CLIENTS_OF_SOL_UVERBS_SOL_UVERBS_QP_H
#define _SYS_IB_CLIENTS_OF_SOL_UVERBS_SOL_UVERBS_QP_H
#ifdef __cplusplus
extern "C" {
#endif
#define IBT_TO_OFA_QP_STATE(_state) ((_state) < IBT_STATE_SQDRAIN ? \
(enum ib_qp_state)(_state) : IB_QPS_SQD)
int sol_uverbs_create_qp(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_destroy_qp(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_modify_qp(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_query_qp(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_create_srq(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_modify_srq(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_query_srq(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_destroy_srq(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_attach_mcast(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
int sol_uverbs_detach_mcast(uverbs_uctxt_uobj_t *uctxt, char *buf, int in_len,
int out_len);
void uverbs_detach_uqp_mcast_entries(uverbs_uqp_uobj_t *uqp);
#ifdef __cplusplus
}
#endif
#endif