|
|
@@ -939,15 +939,19 @@ static int mlx5_ib_query_device(struct ib_device *ibdev,
|
|
|
}
|
|
|
|
|
|
if (MLX5_CAP_GEN(mdev, tag_matching)) {
|
|
|
- props->tm_caps.max_rndv_hdr_size = MLX5_TM_MAX_RNDV_MSG_SIZE;
|
|
|
props->tm_caps.max_num_tags =
|
|
|
(1 << MLX5_CAP_GEN(mdev, log_tag_matching_list_sz)) - 1;
|
|
|
- props->tm_caps.flags = IB_TM_CAP_RC;
|
|
|
props->tm_caps.max_ops =
|
|
|
1 << MLX5_CAP_GEN(mdev, log_max_qp_sz);
|
|
|
props->tm_caps.max_sge = MLX5_TM_MAX_SGE;
|
|
|
}
|
|
|
|
|
|
+ if (MLX5_CAP_GEN(mdev, tag_matching) &&
|
|
|
+ MLX5_CAP_GEN(mdev, rndv_offload_rc)) {
|
|
|
+ props->tm_caps.flags = IB_TM_CAP_RNDV_RC;
|
|
|
+ props->tm_caps.max_rndv_hdr_size = MLX5_TM_MAX_RNDV_MSG_SIZE;
|
|
|
+ }
|
|
|
+
|
|
|
if (MLX5_CAP_GEN(dev->mdev, cq_moderation)) {
|
|
|
props->cq_caps.max_cq_moderation_count =
|
|
|
MLX5_MAX_CQ_COUNT;
|