Home
last modified time | relevance | path

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

/linux/drivers/net/ethernet/mellanox/mlx4/
H A 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 …]
/linux/drivers/infiniband/hw/mthca/
H A 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()
H A 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,
H A 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
491 mthca_uarc_virt(dev, uar, i)); in mthca_map_user_db()
507 void mthca_unmap_user_db(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_unmap_user_db() argument
549 void mthca_cleanup_user_db_tab(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_cleanup_user_db_tab() argument
559 mthca_UNMAP_ICM(dev, mthca_uarc_virt(dev, uar, i), 1); in mthca_cleanup_user_db_tab()
H A Dmthca_srq.c54 __be32 uar; member
113 context->uar = cpu_to_be32(ucontext->uar.index); in mthca_tavor_init_srq_context()
115 context->uar = cpu_to_be32(dev->driver_uar.index); in mthca_tavor_init_srq_context()
141 context->logstride_usrpage |= cpu_to_be32(ucontext->uar.index); in mthca_arbel_init_srq_context()
H A Dmthca_provider.h66 struct mthca_uar uar; member
H A Dmthca_dev.h458 int mthca_uar_alloc(struct mthca_dev *dev, struct mthca_uar *uar);
459 void mthca_uar_free(struct mthca_dev *dev, struct mthca_uar *uar);
H A Dmthca_cq.c830 cq_context->logsize_usrpage |= cpu_to_be32(ctx->uar.index); in mthca_init_cq()
H A Dmthca_qp.c627 qp_context->usr_page = cpu_to_be32(context->uar.index); in __mthca_modify_qp()
/linux/drivers/infiniband/hw/vmw_pvrdma/
H A Dpvrdma_doorbell.c83 int pvrdma_uar_alloc(struct pvrdma_dev *dev, struct pvrdma_uar_map *uar) in pvrdma_uar_alloc() argument
108 uar->index = obj; in pvrdma_uar_alloc()
109 uar->pfn = (pci_resource_start(dev->pdev, PVRDMA_PCI_RESOURCE_UAR) >> in pvrdma_uar_alloc()
110 PAGE_SHIFT) + uar->index; in pvrdma_uar_alloc()
115 void pvrdma_uar_free(struct pvrdma_dev *dev, struct pvrdma_uar_map *uar) in pvrdma_uar_free() argument
121 obj = uar->index & (tbl->max - 1); in pvrdma_uar_free()
/linux/drivers/vdpa/mlx5/core/
H A Dresources.c268 res->uar = mlx5_get_uars_page(mdev); in mlx5_vdpa_alloc_resources()
269 if (IS_ERR(res->uar)) { in mlx5_vdpa_alloc_resources()
270 err = PTR_ERR(res->uar); in mlx5_vdpa_alloc_resources()
310 mlx5_put_uars_page(mdev, res->uar); in mlx5_vdpa_alloc_resources()
327 mlx5_put_uars_page(mvdev->mdev, res->uar); in mlx5_vdpa_free_resources()
H A Dmlx5_vdpa.h47 struct mlx5_uars_page *uar; member
/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/
H A Ddr_domain.c179 dmn->uar = mlx5_get_uars_page(dmn->mdev); in dr_domain_init_resources()
180 if (IS_ERR(dmn->uar)) { in dr_domain_init_resources()
182 ret = PTR_ERR(dmn->uar); in dr_domain_init_resources()
211 mlx5_put_uars_page(dmn->mdev, dmn->uar); in dr_domain_init_resources()
223 mlx5_put_uars_page(dmn->mdev, dmn->uar); in dr_domain_uninit_resources()
H A Ddr_send.c55 struct mlx5_uars_page *uar; member
309 MLX5_SET(qpc, qpc, uar_page, attr->uar->index); in dr_create_rc_qp()
334 dr_qp->uar = attr->uar; in dr_create_rc_qp()
369 mlx5_write64(ctrl, dr_qp->uar->map + MLX5_BF_OFFSET); in dr_cmd_notify_hw()
1053 struct mlx5_uars_page *uar, in dr_create_cq() argument
1108 MLX5_SET(cqc, cqc, uar_page, uar->index); in dr_create_cq()
1215 dmn->send_ring->cq = dr_create_cq(dmn->mdev, dmn->uar, cq_size); in mlx5dr_send_ring_alloc()
1224 init_attr.uar = dmn->uar; in mlx5dr_send_ring_alloc()
/linux/drivers/net/ethernet/mellanox/mlx5/core/fpga/
H A Dconn.c138 mlx5_write64(wqe, conn->fdev->conn_res.uar->map + MLX5_BF_OFFSET); in mlx5_fpga_conn_notify_hw()
362 conn->fdev->conn_res.uar->map, conn->cq.wq.cc); in mlx5_fpga_conn_arm_cq()
464 MLX5_SET(cqc, cqc, uar_page, fdev->conn_res.uar->index); in mlx5_fpga_conn_create_cq()
556 MLX5_SET(qpc, qpc, uar_page, fdev->conn_res.uar->index); in mlx5_fpga_conn_create_qp()
953 fdev->conn_res.uar = mlx5_get_uars_page(fdev->mdev); in mlx5_fpga_conn_device_init()
954 if (IS_ERR(fdev->conn_res.uar)) { in mlx5_fpga_conn_device_init()
955 err = PTR_ERR(fdev->conn_res.uar); in mlx5_fpga_conn_device_init()
960 fdev->conn_res.uar->index); in mlx5_fpga_conn_device_init()
982 mlx5_put_uars_page(fdev->mdev, fdev->conn_res.uar); in mlx5_fpga_conn_device_init()
993 mlx5_put_uars_page(fdev->mdev, fdev->conn_res.uar); in mlx5_fpga_conn_device_cleanup()
H A Dcore.h58 struct mlx5_uars_page *uar; member
/linux/drivers/net/ethernet/mellanox/mlx5/core/
H A Duar.c48 *uarn = MLX5_GET(alloc_uar_out, out, uar); in mlx5_cmd_alloc_uar()
57 MLX5_SET(dealloc_uar_in, in, uar, uarn); in mlx5_cmd_free_uar()
H A Den.h354 struct mlx5_uars_page *uar; member
1114 struct mlx5_uars_page *uar; member
H A Den_main.c2197 struct mlx5_uars_page *uar, in mlx5e_alloc_cq_common() argument
2228 cq->uar = uar; in mlx5e_alloc_cq_common()
2245 ccp->uar, param, cq); in mlx5e_alloc_cq()
2290 MLX5_SET(cqc, cqc, uar_page, cq->uar->index); in mlx5e_create_cq()
/linux/drivers/infiniband/hw/mlx5/
H A Dcmd.c235 *uarn = MLX5_GET(alloc_uar_out, out, uar); in mlx5_cmd_uar_alloc()
244 MLX5_SET(dealloc_uar_in, in, uar, uarn); in mlx5_cmd_uar_dealloc()
/linux/include/linux/mlx4/
H A Ddevice.h722 struct mlx4_uar *uar; member
730 struct mlx4_uar *uar; member
1115 int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar);
1116 void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar);
1147 struct mlx4_uar *uar, u64 db_rec, struct mlx4_cq *cq,
/linux/drivers/vfio/pci/mlx5/
H A Dcmd.h165 struct mlx5_uars_page *uar; member
/linux/drivers/vdpa/mlx5/net/
H A Dmlx5_vnet.c397 MLX5_SET(qpc, qpc, uar_page, ndev->mvdev.res.uar->index); in qp_prepare()
532 void __iomem *uar_page = ndev->mvdev.res.uar->map; in mlx5_vdpa_cq_comp()
559 void __iomem *uar_page = ndev->mvdev.res.uar->map; in cq_create()
609 MLX5_SET(cqc, cqc, uar_page, ndev->mvdev.res.uar->index); in cq_create()
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/
H A Dparams.c648 .uar = c->bfreg->up, in mlx5e_build_create_cq_param()