/freebsd/sys/dev/mlx4/mlx4_core/ |
H A D | mlx4_pd.c | 145 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 …]
|
H A D | mlx4_cq.c | 238 struct mlx4_mtt *mtt, struct mlx4_uar *uar, u64 db_rec, in mlx4_cq_alloc() argument 277 mlx4_to_hw_uar_index(dev, uar->index)); in mlx4_cq_alloc() 293 cq->uar = uar; in mlx4_cq_alloc()
|
/freebsd/sys/dev/mthca/ |
H A D | mthca_uar.c | 36 int mthca_uar_alloc(struct mthca_dev *dev, struct mthca_uar *uar) in mthca_uar_alloc() argument 38 uar->index = mthca_alloc(&dev->uar_table.alloc); in mthca_uar_alloc() 39 if (uar->index == -1) in mthca_uar_alloc() 42 uar->pfn = (pci_resource_start(dev->pdev, 2) >> PAGE_SHIFT) + uar->index; in mthca_uar_alloc() 47 void mthca_uar_free(struct mthca_dev *dev, struct mthca_uar *uar) in mthca_uar_free() argument 49 mthca_free(&dev->uar_table.alloc, uar->index); in mthca_uar_free()
|
H A D | mthca_provider.c | 319 err = mthca_uar_alloc(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext() 326 mthca_uar_free(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext() 331 mthca_cleanup_user_db_tab(to_mdev(ibdev), &context->uar, context->db_tab); in mthca_alloc_ucontext() 332 mthca_uar_free(to_mdev(ibdev), &context->uar); in mthca_alloc_ucontext() 343 mthca_cleanup_user_db_tab(to_mdev(context->device), &to_mucontext(context)->uar, in mthca_dealloc_ucontext() 345 mthca_uar_free(to_mdev(context->device), &to_mucontext(context)->uar); in mthca_dealloc_ucontext() 357 to_mucontext(context)->uar.pfn, in mthca_mmap_uar() 422 err = mthca_map_user_db(to_mdev(ibsrq->device), &context->uar, in mthca_create_srq() 437 mthca_unmap_user_db(to_mdev(ibsrq->device), &context->uar, in mthca_create_srq() 460 mthca_unmap_user_db(to_mdev(srq->device), &context->uar, in mthca_destroy_srq() [all …]
|
H A D | mthca_memfree.h | 163 int mthca_map_user_db(struct mthca_dev *dev, struct mthca_uar *uar, 165 void mthca_unmap_user_db(struct mthca_dev *dev, struct mthca_uar *uar, 168 void mthca_cleanup_user_db_tab(struct mthca_dev *dev, struct mthca_uar *uar,
|
H A D | mthca_memfree.c | 438 static u64 mthca_uarc_virt(struct mthca_dev *dev, struct mthca_uar *uar, int page) in mthca_uarc_virt() argument 441 uar->index * dev->uar_table.uarc_size + in mthca_uarc_virt() 445 int mthca_map_user_db(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_map_user_db() argument 488 mthca_uarc_virt(dev, uar, i)); in mthca_map_user_db() 503 void mthca_unmap_user_db(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_unmap_user_db() argument 545 void mthca_cleanup_user_db_tab(struct mthca_dev *dev, struct mthca_uar *uar, in mthca_cleanup_user_db_tab() argument 555 mthca_UNMAP_ICM(dev, mthca_uarc_virt(dev, uar, i), 1); in mthca_cleanup_user_db_tab()
|
H A D | mthca_srq.c | 54 __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() 135 context->logstride_usrpage |= cpu_to_be32(ucontext->uar.index); in mthca_arbel_init_srq_context()
|
H A D | mthca_provider.h | 68 struct mthca_uar uar; member
|
H A D | mthca_dev.h | 461 int mthca_uar_alloc(struct mthca_dev *dev, struct mthca_uar *uar); 462 void mthca_uar_free(struct mthca_dev *dev, struct mthca_uar *uar);
|
/freebsd/contrib/ofed/libmlx4/ |
H A D | doorbell.h | 55 mmio_writeq((unsigned long)(ctx->uar + offset), MLX4_PAIR_TO_64(val)); in mlx4_write64() 63 mmio_writel((unsigned long)(ctx->uar + offset), val[0]); in mlx4_write64() 64 mmio_writel((unsigned long)(ctx->uar + offset + 4), val[1]); in mlx4_write64()
|
H A D | mlx4.c | 206 context->uar = mmap(NULL, dev->page_size, PROT_WRITE, in mlx4_init_context() 208 if (context->uar == MAP_FAILED) in mlx4_init_context() 287 munmap(context->uar, to_mdev(&v_device->device)->page_size); in mlx4_uninit_context()
|
H A D | mlx4.h | 126 void *uar; member
|
/freebsd/contrib/ofed/libmlx5/ |
H A D | mlx5.c | 688 cq_out->uar = mctx->uar; in mlx5dv_get_cq() 875 context->uar[i] = mmap(NULL, page_size, PROT_WRITE, MAP_SHARED, in mlx5_init_context() 877 if (context->uar[i] == MAP_FAILED) { in mlx5_init_context() 878 context->uar[i] = NULL; in mlx5_init_context() 887 context->bfs[bfi].reg = context->uar[i] + MLX5_ADAPTER_PAGE_SIZE * j + in mlx5_init_context() 984 if (context->uar[i]) in mlx5_init_context() 985 munmap(context->uar[i], page_size); in mlx5_init_context() 1020 if (context->uar[i]) in mlx5_cleanup_context() 1021 munmap(context->uar[i], page_size); in mlx5_cleanup_context()
|
H A D | mlx5dv.h | 133 void *uar; member
|
/freebsd/sys/dev/mlx5/mlx5_fpga/ |
H A D | mlx5fpga_conn.c | 136 mlx5_write64(wqe, conn->fdev->conn_res.uar->map + MLX5_BF_OFFSET, NULL); in mlx5_fpga_conn_notify_hw() 360 conn->fdev->conn_res.uar->map, conn->cq.wq.cc); in mlx5_fpga_conn_arm_cq() 469 MLX5_SET(cqc, cqc, uar_page, fdev->conn_res.uar->index); in mlx5_fpga_conn_create_cq() 492 conn->cq.mcq.uar = fdev->conn_res.uar; in mlx5_fpga_conn_create_cq() 574 MLX5_SET(qpc, qpc, uar_page, fdev->conn_res.uar->index); in mlx5_fpga_conn_create_qp() 998 fdev->conn_res.uar = mlx5_get_uars_page(fdev->mdev); in mlx5_fpga_conn_device_init() 999 if (IS_ERR(fdev->conn_res.uar)) { in mlx5_fpga_conn_device_init() 1000 err = PTR_ERR(fdev->conn_res.uar); in mlx5_fpga_conn_device_init() 1005 fdev->conn_res.uar->index); in mlx5_fpga_conn_device_init() 1027 mlx5_put_uars_page(fdev->mdev, fdev->conn_res.uar); in mlx5_fpga_conn_device_init() [all …]
|
H A D | core.h | 71 struct mlx5_uars_page *uar; member
|
/freebsd/sys/dev/mlx5/mlx5_core/ |
H A D | mlx5_cq.c | 153 cq->uar = dev->priv.uar; in mlx5_core_create_cq()
|
H A D | mlx5_uar.c | 44 *uarn = MLX5_GET(alloc_uar_out, out, uar); in mlx5_cmd_alloc_uar() 55 MLX5_SET(dealloc_uar_in, in, uar, uarn); in mlx5_cmd_free_uar()
|
H A D | mlx5_eq.c | 467 MLX5_SET(eqc, eqc, uar_page, priv->uar->index); in mlx5_create_map_eq() 479 eq->doorbell = priv->uar->map + MLX5_EQ_DOORBEL_OFFSET; in mlx5_create_map_eq()
|
H A D | mlx5_main.c | 1191 dev->priv.uar = mlx5_get_uars_page(dev); in mlx5_load_one() 1192 if (IS_ERR(dev->priv.uar)) { in mlx5_load_one() 1194 err = PTR_ERR(dev->priv.uar); in mlx5_load_one() 1280 mlx5_put_uars_page(dev, dev->priv.uar); in mlx5_load_one() 1339 mlx5_put_uars_page(dev, dev->priv.uar); in mlx5_unload_one()
|
/freebsd/sys/dev/mlx4/mlx4_ib/ |
H A D | mlx4_ib_cq.c | 182 struct mlx4_uar *uar; in mlx4_ib_create_cq() local 220 uar = &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()
|
H A D | mlx4_ib_main.c | 1067 err = mlx4_uar_alloc(to_mdev(ibdev)->dev, &context->uar); in mlx4_ib_alloc_ucontext() 1080 mlx4_uar_free(to_mdev(ibdev)->dev, &context->uar); in mlx4_ib_alloc_ucontext() 1091 mlx4_uar_free(to_mdev(ibcontext->device)->dev, &context->uar); in mlx4_ib_dealloc_ucontext() 1101 to_mucontext(context)->uar.pfn, in mlx4_ib_mmap() 1111 to_mucontext(context)->uar.pfn + in mlx4_ib_mmap()
|
/freebsd/sys/dev/mlx5/ |
H A D | cq.h | 43 struct mlx5_uars_page *uar; member
|
/freebsd/sys/dev/mlx4/ |
H A D | device.h | 726 struct mlx4_uar *uar; member 734 struct mlx4_uar *uar; member 1089 int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar); 1090 void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar); 1122 struct mlx4_uar *uar, u64 db_rec, struct mlx4_cq *cq,
|
/freebsd/sys/dev/mlx4/mlx4_en/ |
H A D | mlx4_en_tx.c | 162 ring->bf.uar = &mdev->priv_uar; in mlx4_en_create_tx_ring() 163 ring->bf.uar->map = mdev->uar_map; in mlx4_en_create_tx_ring() 236 ring->context.usr_page = cpu_to_be32(ring->bf.uar->index); in mlx4_en_activate_tx_ring() 919 ((u8 *)ring->bf.uar->map) + MLX4_SEND_DOORBELL); in mlx4_en_xmit()
|