aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mlx4/device.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/mlx4/device.h')
-rw-r--r--include/linux/mlx4/device.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index ce9ef491addf..ff3ccd5c44d6 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -61,6 +61,7 @@ enum {
61 MLX4_DEV_CAP_FLAG_RC = 1LL << 0, 61 MLX4_DEV_CAP_FLAG_RC = 1LL << 0,
62 MLX4_DEV_CAP_FLAG_UC = 1LL << 1, 62 MLX4_DEV_CAP_FLAG_UC = 1LL << 1,
63 MLX4_DEV_CAP_FLAG_UD = 1LL << 2, 63 MLX4_DEV_CAP_FLAG_UD = 1LL << 2,
64 MLX4_DEV_CAP_FLAG_XRC = 1LL << 3,
64 MLX4_DEV_CAP_FLAG_SRQ = 1LL << 6, 65 MLX4_DEV_CAP_FLAG_SRQ = 1LL << 6,
65 MLX4_DEV_CAP_FLAG_IPOIB_CSUM = 1LL << 7, 66 MLX4_DEV_CAP_FLAG_IPOIB_CSUM = 1LL << 7,
66 MLX4_DEV_CAP_FLAG_BAD_PKEY_CNTR = 1LL << 8, 67 MLX4_DEV_CAP_FLAG_BAD_PKEY_CNTR = 1LL << 8,
@@ -262,6 +263,8 @@ struct mlx4_caps {
262 int num_qp_per_mgm; 263 int num_qp_per_mgm;
263 int num_pds; 264 int num_pds;
264 int reserved_pds; 265 int reserved_pds;
266 int max_xrcds;
267 int reserved_xrcds;
265 int mtt_entry_sz; 268 int mtt_entry_sz;
266 u32 max_msg_sz; 269 u32 max_msg_sz;
267 u32 page_size_cap; 270 u32 page_size_cap;
@@ -506,6 +509,8 @@ static inline void *mlx4_buf_offset(struct mlx4_buf *buf, int offset)
506 509
507int mlx4_pd_alloc(struct mlx4_dev *dev, u32 *pdn); 510int mlx4_pd_alloc(struct mlx4_dev *dev, u32 *pdn);
508void mlx4_pd_free(struct mlx4_dev *dev, u32 pdn); 511void mlx4_pd_free(struct mlx4_dev *dev, u32 pdn);
512int mlx4_xrcd_alloc(struct mlx4_dev *dev, u32 *xrcdn);
513void mlx4_xrcd_free(struct mlx4_dev *dev, u32 xrcdn);
509 514
510int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar); 515int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar);
511void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar); 516void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar);
@@ -545,8 +550,8 @@ void mlx4_qp_release_range(struct mlx4_dev *dev, int base_qpn, int cnt);
545int mlx4_qp_alloc(struct mlx4_dev *dev, int qpn, struct mlx4_qp *qp); 550int mlx4_qp_alloc(struct mlx4_dev *dev, int qpn, struct mlx4_qp *qp);
546void mlx4_qp_free(struct mlx4_dev *dev, struct mlx4_qp *qp); 551void mlx4_qp_free(struct mlx4_dev *dev, struct mlx4_qp *qp);
547 552
548int mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, struct mlx4_mtt *mtt, 553int mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, u32 cqn, u16 xrcdn,
549 u64 db_rec, struct mlx4_srq *srq); 554 struct mlx4_mtt *mtt, u64 db_rec, struct mlx4_srq *srq);
550void mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq); 555void mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq);
551int mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark); 556int mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark);
552int mlx4_srq_query(struct mlx4_dev *dev, struct mlx4_srq *srq, int *limit_watermark); 557int mlx4_srq_query(struct mlx4_dev *dev, struct mlx4_srq *srq, int *limit_watermark);