RDMA/mlx5: Split the WR setup out of mlx5_ib_update_xlt()
[linux-2.6-microblaze.git] / drivers / infiniband / hw / mlx5 / mlx5_ib.h
index b1f2b34..d92afbd 100644 (file)
@@ -597,13 +597,12 @@ struct mlx5_ib_mr {
        int                     max_descs;
        int                     desc_size;
        int                     access_mode;
+       unsigned int            page_shift;
        struct mlx5_core_mkey   mmkey;
        struct ib_umem         *umem;
        struct mlx5_shared_mr_info      *smr_info;
        struct list_head        list;
-       unsigned int            order;
        struct mlx5_cache_ent  *cache_ent;
-       int                     npages;
        struct mlx5_ib_dev     *dev;
        u32 out[MLX5_ST_SZ_DW(create_mkey_out)];
        struct mlx5_core_sig_ctx    *sig;
@@ -1232,13 +1231,12 @@ int mlx5_ib_query_port(struct ib_device *ibdev, u8 port,
                       struct ib_port_attr *props);
 void mlx5_ib_cont_pages(struct ib_umem *umem, u64 addr,
                        unsigned long max_page_shift,
-                       int *count, int *shift,
-                       int *ncont, int *order);
+                       int *shift);
 void __mlx5_ib_populate_pas(struct mlx5_ib_dev *dev, struct ib_umem *umem,
                            int page_shift, size_t offset, size_t num_pages,
                            __be64 *pas, int access_flags);
-void mlx5_ib_populate_pas(struct mlx5_ib_dev *dev, struct ib_umem *umem,
-                         int page_shift, __be64 *pas, int access_flags);
+void mlx5_ib_populate_pas(struct ib_umem *umem, size_t page_size, __be64 *pas,
+                         u64 access_flags);
 void mlx5_ib_copy_pas(u64 *old, u64 *new, int step, int num);
 int mlx5_ib_get_cqe_size(struct ib_cq *ibcq);
 int mlx5_mr_cache_init(struct mlx5_ib_dev *dev);
@@ -1456,8 +1454,7 @@ static inline int get_num_static_uars(struct mlx5_ib_dev *dev,
        return get_uars_per_sys_page(dev, bfregi->lib_uar_4k) * bfregi->num_static_sys_pages;
 }
 
-unsigned long mlx5_ib_get_xlt_emergency_page(void);
-void mlx5_ib_put_xlt_emergency_page(void);
+extern void *xlt_emergency_page;
 
 int bfregn_to_uar_index(struct mlx5_ib_dev *dev,
                        struct mlx5_bfreg_info *bfregi, u32 bfregn,