| /linux/drivers/infiniband/hw/mthca/ |
| H A D | mthca_mr.c | 208 struct mthca_mtt *mtt; in __mthca_alloc_mtt() local 214 mtt = kmalloc_obj(*mtt); in __mthca_alloc_mtt() 215 if (!mtt) in __mthca_alloc_mtt() 218 mtt->buddy = buddy; in __mthca_alloc_mtt() 219 mtt->order = 0; in __mthca_alloc_mtt() 221 ++mtt->order; in __mthca_alloc_mtt() 223 mtt->first_seg = mthca_alloc_mtt_range(dev, mtt->order, buddy); in __mthca_alloc_mtt() 224 if (mtt->first_seg == -1) { in __mthca_alloc_mtt() 225 kfree(mtt); in __mthca_alloc_mtt() 229 return mtt; in __mthca_alloc_mtt() [all …]
|
| H A D | mthca_provider.c | 875 mr->mtt = mthca_alloc_mtt(dev, n); in mthca_reg_user_mr() 876 if (IS_ERR(mr->mtt)) { in mthca_reg_user_mr() 877 err = PTR_ERR(mr->mtt); in mthca_reg_user_mr() 899 err = mthca_write_mtt(dev, mr->mtt, n, pages, i); in mthca_reg_user_mr() 908 err = mthca_write_mtt(dev, mr->mtt, n, pages, i); in mthca_reg_user_mr() 923 mthca_free_mtt(dev, mr->mtt); in mthca_reg_user_mr()
|
| H A D | mthca_provider.h | 76 struct mthca_mtt *mtt; member
|
| H A D | mthca_dev.h | 467 void mthca_free_mtt(struct mthca_dev *dev, struct mthca_mtt *mtt); 468 int mthca_write_mtt(struct mthca_dev *dev, struct mthca_mtt *mtt,
|
| /linux/drivers/net/ethernet/mellanox/mlx4/ |
| H A D | resource_tracker.c | 110 struct res_mtt *mtt; member 158 struct res_mtt *mtt; member 170 struct res_mtt *mtt; member 181 struct res_mtt *mtt; member 193 struct res_mtt *mtt; member 456 dev->quotas.mtt = dev->caps.num_mtts - dev->caps.reserved_mtts; in mlx4_init_quotas() 468 dev->quotas.mtt = in mlx4_init_quotas() 2738 int size, struct res_mtt *mtt) in check_mtt_range() argument 2740 int res_start = mtt->com.res_id; in check_mtt_range() 2741 int res_size = (1 << mtt->order); in check_mtt_range() [all …]
|
| H A D | cq.c | 192 int entries, struct mlx4_mtt *mtt) in mlx4_cq_resize() argument 205 cq_context->log_page_size = mtt->page_shift - 12; in mlx4_cq_resize() 206 mtt_addr = mlx4_mtt_addr(dev, mtt); in mlx4_cq_resize() 343 struct mlx4_mtt *mtt, struct mlx4_uar *uar, u64 db_rec, in mlx4_cq_alloc() argument 385 cq_context->log_page_size = mtt->page_shift - MLX4_ICM_PAGE_SHIFT; in mlx4_cq_alloc() 387 mtt_addr = mlx4_mtt_addr(dev, mtt); in mlx4_cq_alloc()
|
| H A D | qp.c | 92 static int __mlx4_qp_modify(struct mlx4_dev *dev, struct mlx4_mtt *mtt, in __mlx4_qp_modify() argument 169 u64 mtt_addr = mlx4_mtt_addr(dev, mtt); in __mlx4_qp_modify() 172 context->log_page_size = mtt->page_shift - MLX4_ICM_PAGE_SHIFT; in __mlx4_qp_modify() 213 int mlx4_qp_modify(struct mlx4_dev *dev, struct mlx4_mtt *mtt, in mlx4_qp_modify() argument 219 return __mlx4_qp_modify(dev, mtt, cur_state, new_state, context, in mlx4_qp_modify() 918 int mlx4_qp_to_ready(struct mlx4_dev *dev, struct mlx4_mtt *mtt, in mlx4_qp_to_ready() argument 936 err = mlx4_qp_modify(dev, mtt, states[i], states[i + 1], in mlx4_qp_to_ready()
|
| H A D | alloc.c | 767 &wqres->mtt); in mlx4_alloc_hwq_res() 771 err = mlx4_buf_write_mtt(dev, &wqres->mtt, &wqres->buf); in mlx4_alloc_hwq_res() 778 mlx4_mtt_cleanup(dev, &wqres->mtt); in mlx4_alloc_hwq_res() 791 mlx4_mtt_cleanup(dev, &wqres->mtt); in mlx4_free_hwq_res()
|
| H A D | eq.c | 1028 err = mlx4_mtt_init(dev, npages, PAGE_SHIFT, &eq->mtt); in mlx4_create_eq() 1032 err = mlx4_write_mtt(dev, &eq->mtt, 0, npages, dma_list); in mlx4_create_eq() 1042 mtt_addr = mlx4_mtt_addr(dev, &eq->mtt); in mlx4_create_eq() 1065 mlx4_mtt_cleanup(dev, &eq->mtt); in mlx4_create_eq() 1105 mlx4_mtt_cleanup(dev, &eq->mtt); in mlx4_free_eq()
|
| H A D | mlx4.h | 402 struct mlx4_mtt mtt; member 1039 int __mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt,
|
| H A D | en_rx.c | 1122 err = mlx4_qp_to_ready(mdev->dev, &ring->wqres.mtt, context, qp, state); in mlx4_en_config_rss_qp() 1263 err = mlx4_qp_to_ready(mdev->dev, &priv->res.mtt, &context, in mlx4_en_config_rss_steer()
|
| H A D | main.c | 1001 dev->quotas.mtt = func_cap->mtt_quota; in mlx4_slave_cap()
|
| /linux/include/linux/mlx4/ |
| H A D | device.h | 684 struct mlx4_mtt mtt; member 689 struct mlx4_mtt mtt; member 835 int mtt; member 1121 struct mlx4_mtt *mtt); 1122 void mlx4_mtt_cleanup(struct mlx4_dev *dev, struct mlx4_mtt *mtt); 1123 u64 mlx4_mtt_addr(struct mlx4_dev *dev, struct mlx4_mtt *mtt); 1133 int mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, 1135 int mlx4_buf_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, 1146 int mlx4_cq_alloc(struct mlx4_dev *dev, int nent, struct mlx4_mtt *mtt, 1159 struct mlx4_mtt *mtt, u64 db_rec, struct mlx4_srq *srq);
|
| H A D | qp.h | 478 int mlx4_qp_modify(struct mlx4_dev *dev, struct mlx4_mtt *mtt, 486 int mlx4_qp_to_ready(struct mlx4_dev *dev, struct mlx4_mtt *mtt,
|
| H A D | cq.h | 185 int entries, struct mlx4_mtt *mtt);
|
| /linux/drivers/vdpa/mlx5/core/ |
| H A D | mr.c | 35 static void populate_mtts(struct mlx5_vdpa_direct_mr *mr, __be64 *mtt) in populate_mtts() argument 48 mtt[j++] = cpu_to_be64(dma_addr); in populate_mtts() 55 __be64 mtt[]; member 226 mttlen = roundup(MLX5_ST_SZ_BYTES(mtt) * dmr->nsg, MLX5_VDPA_MTT_ALIGN); in create_direct_keys() 227 mttcount = mttlen / sizeof(cmd_mem->mtt[0]); in create_direct_keys() 228 cmd_mem = kvcalloc(1, struct_size(cmd_mem, mtt, mttcount), GFP_KERNEL); in create_direct_keys() 237 cmds[i].inlen = struct_size(cmd_mem, mtt, mttcount); in create_direct_keys()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/diag/ |
| H A D | fw_tracer.c | 182 __be64 *mtt; in mlx5_fw_tracer_create_mkey() local 187 sizeof(*mtt) * round_up(TRACER_BUFFER_PAGE_NUM, 2); in mlx5_fw_tracer_create_mkey() 195 mtt = (__be64 *)MLX5_ADDR_OF(create_mkey_in, in, klm_pas_mtt); in mlx5_fw_tracer_create_mkey() 197 mtt[i] = cpu_to_be64(tracer->buff.dma + i * PAGE_SIZE); in mlx5_fw_tracer_create_mkey()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_main.c | 430 struct mlx5_mtt *mtt; in mlx5e_create_umr_mkey() local 507 mtt = MLX5_ADDR_OF(create_mkey_in, in, klm_pas_mtt); in mlx5e_create_umr_mkey() 509 mtt[i] = (struct mlx5_mtt) { in mlx5e_create_umr_mkey() 784 struct mlx5_mtt *mtt; in mlx5e_create_rq_hd_mkey() local 813 mtt = MLX5_ADDR_OF(create_mkey_in, in, klm_pas_mtt); in mlx5e_create_rq_hd_mkey() 815 mtt[i].ptag = cpu_to_be64(shampo->hd_buf_pages[i].addr); in mlx5e_create_rq_hd_mkey()
|
| /linux/drivers/vdpa/mlx5/net/ |
| H A D | mlx5_vnet.c | 731 inlen = MLX5_ST_SZ_BYTES(create_umem_in) + MLX5_ST_SZ_BYTES(mtt) * umem->frag_buf.npages; in create_umem() 745 pas = (__be64 *)MLX5_ADDR_OF(umem, um, mtt[0]); in create_umem()
|