| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | uar.c | 204 static int alloc_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg, in alloc_bfreg() argument 248 bfreg->map = up->map + map_offset(mdev, dbi); in alloc_bfreg() 249 bfreg->up = up; in alloc_bfreg() 250 bfreg->wc = map_wc; in alloc_bfreg() 251 bfreg->index = up->index + dbi / MLX5_BFREGS_PER_UAR; in alloc_bfreg() 257 int mlx5_alloc_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg, in mlx5_alloc_bfreg() argument 262 err = alloc_bfreg(mdev, bfreg, map_wc, fast_path); in mlx5_alloc_bfreg() 267 return alloc_bfreg(mdev, bfreg, false, fast_path); in mlx5_alloc_bfreg() 275 struct mlx5_sq_bfreg *bfreg) in addr_to_dbi_in_syspage() argument 283 uar_idx = (bfreg->map - up->map) >> MLX5_ADAPTER_PAGE_SHIFT; in addr_to_dbi_in_syspage() [all …]
|
| H A D | wc.c | 46 struct mlx5_sq_bfreg bfreg; member 103 MLX5_SET(cqc, cqc, uar_page, mdev->priv.bfreg.up->index); in create_wc_cq() 125 MLX5_SET(cqc, cqc, uar_page, mdev->priv.bfreg.up->index); in mlx5_wc_create_cq() 185 MLX5_SET(wq, wq, uar_page, sq->bfreg.index); in create_wc_sq() 275 : "r"(mmio_wqe), "r"(sq->bfreg.map + offset) in mlx5_iowrite64_copy() 281 __iowrite64_copy(sq->bfreg.map + offset, mmio_wqe, in mlx5_iowrite64_copy() 373 err = mlx5_alloc_bfreg(mdev, &sq->bfreg, true, false); in mlx5_core_test_wc() 401 mlx5_free_bfreg(mdev, &sq->bfreg); in mlx5_core_test_wc()
|
| H A D | eq.c | 310 MLX5_SET(eqc, eqc, uar_page, priv->bfreg.up->index); in create_map_eq() 323 eq->doorbell = priv->bfreg.up->map + MLX5_EQ_DOORBELL_OFFSET; in create_map_eq()
|
| H A D | main.c | 1320 err = mlx5_alloc_bfreg(dev, &dev->priv.bfreg, false, false); in mlx5_load() 1425 mlx5_free_bfreg(dev, &dev->priv.bfreg); in mlx5_load() 1450 mlx5_free_bfreg(dev, &dev->priv.bfreg); in mlx5_unload()
|
| H A D | en_main.c | 1495 sq->uar_map = c->bfreg->map; in mlx5e_alloc_xdpsq() 1580 sq->uar_map = c->bfreg->map; in mlx5e_alloc_icosq() 1665 sq->uar_map = c->bfreg->map; in mlx5e_alloc_txqsq() 1845 csp.uar_page = c->bfreg->index; in mlx5e_open_txqsq() 2003 csp.uar_page = c->bfreg->index; in mlx5e_open_icosq() 2066 csp.uar_page = c->bfreg->index; in mlx5e_open_xdpsq() 2757 c->bfreg = &c->mdev->priv.bfreg; in mlx5e_channel_pick_doorbell() 2762 c->bfreg = hw_objs->bfregs + c->vec_ix % hw_objs->num_bfregs; in mlx5e_channel_pick_doorbell() 3611 mdev->priv.bfreg.up, param, cq); in mlx5e_alloc_drop_cq()
|
| H A D | en.h | 796 struct mlx5_sq_bfreg *bfreg; member
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
| H A D | aso.c | 103 MLX5_SET(cqc, cqc, uar_page, mdev->priv.bfreg.up->index); in create_aso_cq() 132 MLX5_SET(cqc, cqc_data, uar_page, mdev->priv.bfreg.up->index); in mlx5_aso_create_cq() 166 sq->uar_map = mdev->priv.bfreg.map; in mlx5_aso_alloc_sq() 206 MLX5_SET(wq, wq, uar_page, mdev->priv.bfreg.index); in create_aso_sq()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | ptp.c | 346 sq->uar_map = c->bfreg->map; in mlx5e_ptp_alloc_txqsq() 484 csp.uar_page = c->bfreg->index; in mlx5e_ptp_open_txqsq() 576 ccp.uar = c->bfreg->up; in mlx5e_ptp_open_tx_cqs() 626 ccp.uar = c->bfreg->up; in mlx5e_ptp_open_rx_cq() 900 c->bfreg = &mdev->priv.bfreg; in mlx5e_ptp_open()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | send.c | 693 sq->uar_map = mdev->priv.bfreg.map; in hws_send_ring_alloc_sq() 767 MLX5_SET(wq, wq, uar_page, mdev->priv.bfreg.index); in hws_send_ring_create_sq() 936 MLX5_SET(cqc, cqc, uar_page, mdev->priv.bfreg.up->index); in hws_send_ring_create_cq() 959 MLX5_SET(cqc, cqc_data, uar_page, mdev->priv.bfreg.up->index); in hws_send_ring_open_cq()
|
| /linux/include/linux/mlx5/ |
| H A D | driver.h | 615 struct mlx5_sq_bfreg bfreg; member 1099 int mlx5_alloc_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg, 1101 void mlx5_free_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg);
|
| /linux/drivers/infiniband/hw/mlx5/ |
| H A D | cq.c | 651 void __iomem *uar_page = mdev->priv.bfreg.up->map; in mlx5_ib_arm_cq() 926 *index = dev->mdev->priv.bfreg.up->index; in create_cq_kernel()
|
| H A D | wr.c | 1044 mlx5_write64((__be32 *)ctrl, bf->bfreg->map + bf->offset); in mlx5r_ring_db()
|
| H A D | qp.c | 1109 qp->bf.bfreg = &dev->fp_bfreg; in _create_kernel_qp() 1111 qp->bf.bfreg = &dev->bfreg; in _create_kernel_qp() 1117 uar_index = qp->bf.bfreg->index; in _create_kernel_qp()
|
| H A D | main.c | 4843 err = mlx5_alloc_bfreg(dev->mdev, &dev->bfreg, false, false); in mlx5_ib_stage_bfrag_init() 4849 mlx5_free_bfreg(dev->mdev, &dev->bfreg); in mlx5_ib_stage_bfrag_init() 4857 mlx5_free_bfreg(dev->mdev, &dev->bfreg); in mlx5_ib_stage_bfrag_cleanup()
|