|
@@ -777,6 +777,16 @@ static int mlx5_ib_query_device(struct ib_device *ibdev,
|
|
|
1 << MLX5_CAP_GEN(dev->mdev, log_max_rq);
|
|
|
}
|
|
|
|
|
|
+ if (MLX5_CAP_GEN(mdev, tag_matching)) {
|
|
|
+ props->xrq_caps.max_rndv_hdr_size = MLX5_TM_MAX_RNDV_MSG_SIZE;
|
|
|
+ props->xrq_caps.max_num_tags =
|
|
|
+ (1 << MLX5_CAP_GEN(mdev, log_tag_matching_list_sz)) - 1;
|
|
|
+ props->xrq_caps.flags = IB_TM_CAP_RC;
|
|
|
+ props->xrq_caps.max_ops =
|
|
|
+ 1 << MLX5_CAP_GEN(mdev, log_max_qp_sz);
|
|
|
+ props->xrq_caps.max_sge = MLX5_TM_MAX_SGE;
|
|
|
+ }
|
|
|
+
|
|
|
if (field_avail(typeof(resp), cqe_comp_caps, uhw->outlen)) {
|
|
|
resp.cqe_comp_caps.max_num =
|
|
|
MLX5_CAP_GEN(dev->mdev, cqe_compression) ?
|