Home
last modified time | relevance | path

Searched refs:uar (Results 1 – 26 of 26) sorted by relevance

/linux-4.4.14/drivers/net/ethernet/mellanox/mlx4/
Dpd.c145 int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar) in mlx4_uar_alloc() argument
149 uar->index = mlx4_bitmap_alloc(&mlx4_priv(dev)->uar_table.bitmap); in mlx4_uar_alloc()
150 if (uar->index == -1) in mlx4_uar_alloc()
154 offset = uar->index % ((int)pci_resource_len(dev->persist->pdev, in mlx4_uar_alloc()
158 offset = uar->index; in mlx4_uar_alloc()
159 uar->pfn = (pci_resource_start(dev->persist->pdev, 2) >> PAGE_SHIFT) in mlx4_uar_alloc()
161 uar->map = NULL; in mlx4_uar_alloc()
166 void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar) in mlx4_uar_free() argument
168 mlx4_bitmap_free(&mlx4_priv(dev)->uar_table.bitmap, uar->index, MLX4_USE_RR); in mlx4_uar_free()
175 struct mlx4_uar *uar; in mlx4_bf_alloc() local
[all …]
Dcq.c284 struct mlx4_mtt *mtt, struct mlx4_uar *uar, u64 db_rec, in mlx4_cq_alloc() argument
321 cq_context->logsize_usrpage = cpu_to_be32((ilog2(nent) << 24) | uar->index); in mlx4_cq_alloc()
337 cq->uar = uar; in mlx4_cq_alloc()
Den_tx.c133 ring->bf.uar = &mdev->priv_uar; in mlx4_en_create_tx_ring()
134 ring->bf.uar->map = mdev->uar_map; in mlx4_en_create_tx_ring()
216 ring->context.usr_page = cpu_to_be32(ring->bf.uar->index); in mlx4_en_activate_tx_ring()
992 ring->bf.uar->map + MLX4_SEND_DOORBELL); in mlx4_en_xmit()
/linux-4.4.14/drivers/infiniband/hw/mthca/
Dmthca_uar.c38 int mthca_uar_alloc(struct mthca_dev *dev, struct mthca_uar *uar) in mthca_uar_alloc() argument
40 uar->index = mthca_alloc(&dev->uar_table.alloc); in mthca_uar_alloc()
41 if (uar->index == -1) in mthca_uar_alloc()
44 uar->pfn = (pci_resource_start(dev->pdev, 2) >> PAGE_SHIFT) + uar->index; in mthca_uar_alloc()
49 void mthca_uar_free(struct mthca_dev *dev, struct mthca_uar *uar) in mthca_uar_free() argument
51 mthca_free(&dev->uar_table.alloc, uar->index); in mthca_uar_free()
Dmthca_provider.c323 err = mthca_uar_alloc(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext()
332 mthca_uar_free(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext()
338 mthca_cleanup_user_db_tab(to_mdev(ibdev), &context->uar, context->db_tab); in mthca_alloc_ucontext()
339 mthca_uar_free(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext()
351 mthca_cleanup_user_db_tab(to_mdev(context->device), &to_mucontext(context)->uar, in mthca_dealloc_ucontext()
353 mthca_uar_free(to_mdev(context->device), &to_mucontext(context)->uar); in mthca_dealloc_ucontext()
368 to_mucontext(context)->uar.pfn, in mthca_mmap_uar()
462 err = mthca_map_user_db(to_mdev(pd->device), &context->uar, in mthca_create_srq()
477 mthca_unmap_user_db(to_mdev(pd->device), &context->uar, in mthca_create_srq()
504 mthca_unmap_user_db(to_mdev(srq->device), &context->uar, in mthca_destroy_srq()
[all …]
Dmthca_memfree.h165 int mthca_map_user_db(struct mthca_dev *dev, struct mthca_uar *uar,
167 void mthca_unmap_user_db(struct mthca_dev *dev, struct mthca_uar *uar,
170 void mthca_cleanup_user_db_tab(struct mthca_dev *dev, struct mthca_uar *uar,
Dmthca_memfree.c439 static u64 mthca_uarc_virt(struct mthca_dev *dev, struct mthca_uar *uar, int page) in mthca_uarc_virt() argument
442 uar->index * dev->uar_table.uarc_size + in mthca_uarc_virt()
446 int mthca_map_user_db(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_map_user_db() argument
490 mthca_uarc_virt(dev, uar, i)); in mthca_map_user_db()
505 void mthca_unmap_user_db(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_unmap_user_db() argument
547 void mthca_cleanup_user_db_tab(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_cleanup_user_db_tab() argument
557 mthca_UNMAP_ICM(dev, mthca_uarc_virt(dev, uar, i), 1); in mthca_cleanup_user_db_tab()
Dmthca_srq.c52 __be32 uar; member
107 context->uar = in mthca_tavor_init_srq_context()
108 cpu_to_be32(to_mucontext(pd->ibpd.uobject->context)->uar.index); in mthca_tavor_init_srq_context()
110 context->uar = cpu_to_be32(dev->driver_uar.index); in mthca_tavor_init_srq_context()
134 cpu_to_be32(to_mucontext(pd->ibpd.uobject->context)->uar.index); in mthca_arbel_init_srq_context()
Dmthca_provider.h66 struct mthca_uar uar; member
Dmthca_dev.h459 int mthca_uar_alloc(struct mthca_dev *dev, struct mthca_uar *uar);
460 void mthca_uar_free(struct mthca_dev *dev, struct mthca_uar *uar);
Dmthca_cq.c836 cq_context->logsize_usrpage |= cpu_to_be32(ctx->uar.index); in mthca_init_cq()
Dmthca_qp.c611 cpu_to_be32(to_mucontext(qp->ibqp.uobject->context)->uar.index); in __mthca_modify_qp()
/linux-4.4.14/drivers/net/ethernet/mellanox/mlx5/core/
Duar.c180 bf->uar = &uuari->uars[i / MLX5_BF_REGS_PER_PAGE]; in mlx5_alloc_uuars()
229 int mlx5_alloc_map_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar) in mlx5_alloc_map_uar() argument
235 err = mlx5_cmd_alloc_uar(mdev, &uar->index); in mlx5_alloc_map_uar()
242 pfn = (uar_bar_start >> PAGE_SHIFT) + uar->index; in mlx5_alloc_map_uar()
243 uar->map = ioremap(pfn << PAGE_SHIFT, PAGE_SIZE); in mlx5_alloc_map_uar()
244 if (!uar->map) { in mlx5_alloc_map_uar()
251 uar->bf_map = io_mapping_map_wc(mdev->priv.bf_mapping, in mlx5_alloc_map_uar()
252 uar->index << PAGE_SHIFT); in mlx5_alloc_map_uar()
257 mlx5_cmd_free_uar(mdev, uar->index); in mlx5_alloc_map_uar()
263 void mlx5_unmap_free_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar) in mlx5_unmap_free_uar() argument
[all …]
DMakefile3 mlx5_core-y := main.o cmd.o debugfs.o fw.o eq.o uar.o pagealloc.o \
Deq.c340 int nent, u64 mask, const char *name, struct mlx5_uar *uar) in mlx5_create_map_eq() argument
367 in->ctx.log_sz_usr_page = cpu_to_be32(ilog2(eq->nent) << 24 | uar->index); in mlx5_create_map_eq()
387 eq->doorbell = uar->map + MLX5_EQ_DOORBEL_OFFSET; in mlx5_create_map_eq()
Den.h389 struct mlx5_uar uar; member
623 mlx5_cq_arm(mcq, MLX5_CQ_DB_REQ_NOT, mcq->uar->map, NULL, cq->wq.cc); in mlx5e_cq_arm()
Den_main.c545 err = mlx5_alloc_map_uar(mdev, &sq->uar); in mlx5e_create_sq()
557 sq->uar_map = sq->uar.map; in mlx5e_create_sq()
558 sq->uar_bf_map = sq->uar.bf_map; in mlx5e_create_sq()
583 mlx5_unmap_free_uar(mdev, &sq->uar); in mlx5e_create_sq()
595 mlx5_unmap_free_uar(priv->mdev, &sq->uar); in mlx5e_destroy_sq()
628 MLX5_SET(wq, wq, uar_page, sq->uar.index); in mlx5e_enable_sq()
775 mcq->uar = &priv->cq_uar; in mlx5e_create_cq()
823 MLX5_SET(cqc, cqc, uar_page, mcq->uar->index); in mlx5e_enable_cq()
1526 mcq->uar = &priv->cq_uar; in mlx5e_create_drop_cq()
/linux-4.4.14/include/linux/mlx5/
Ddriver.h179 struct mlx5_uar *uar; member
701 int mlx5_alloc_map_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar);
702 void mlx5_unmap_free_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar);
761 int nent, u64 mask, const char *name, struct mlx5_uar *uar);
Dcq.h51 struct mlx5_uar *uar; member
Dmlx5_ifc.h5123 u8 uar[0x18]; member
5828 u8 uar[0x18]; member
/linux-4.4.14/drivers/infiniband/hw/mlx4/
Dcq.c179 struct mlx4_uar *uar; in mlx4_ib_create_cq() local
220 uar = &to_mucontext(context)->uar; in mlx4_ib_create_cq()
235 uar = &dev->priv_uar; in mlx4_ib_create_cq()
241 err = mlx4_cq_alloc(dev->dev, entries, &cq->buf.mtt, uar, in mlx4_ib_create_cq()
Dmain.c930 err = mlx4_uar_alloc(to_mdev(ibdev)->dev, &context->uar); in mlx4_ib_alloc_ucontext()
945 mlx4_uar_free(to_mdev(ibdev)->dev, &context->uar); in mlx4_ib_alloc_ucontext()
957 mlx4_uar_free(to_mdev(ibcontext->device)->dev, &context->uar); in mlx4_ib_dealloc_ucontext()
1089 to_mucontext(context)->uar.pfn, in mlx4_ib_mmap()
1103 to_mucontext(context)->uar.pfn + in mlx4_ib_mmap()
Dmlx4_ib.h87 struct mlx4_uar uar; member
Dqp.c1594 context->usr_page = cpu_to_be32(to_mucontext(ibqp->uobject->context)->uar.index); in __mlx4_ib_modify_qp()
/linux-4.4.14/include/linux/mlx4/
Ddevice.h704 struct mlx4_uar *uar; member
712 struct mlx4_uar *uar; member
1062 int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar);
1063 void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar);
1095 struct mlx4_uar *uar, u64 db_rec, struct mlx4_cq *cq,
/linux-4.4.14/drivers/infiniband/hw/mlx5/
Dqp.c751 uar_index = qp->bf->uar->index; in create_kernel_qp()