| /linux/drivers/infiniband/hw/bng_re/ |
| H A D | bng_fw.c | 53 void bng_re_free_rcfw_channel(struct bng_re_rcfw *rcfw) in bng_re_free_rcfw_channel() argument 55 kfree(rcfw->crsqe_tbl); in bng_re_free_rcfw_channel() 56 bng_re_free_hwq(rcfw->res, &rcfw->cmdq.hwq); in bng_re_free_rcfw_channel() 57 bng_re_free_hwq(rcfw->res, &rcfw->creq.hwq); in bng_re_free_rcfw_channel() 58 rcfw->pdev = NULL; in bng_re_free_rcfw_channel() 62 struct bng_re_rcfw *rcfw) in bng_re_alloc_fw_channel() argument 69 rcfw->pdev = res->pdev; in bng_re_alloc_fw_channel() 70 cmdq = &rcfw->cmdq; in bng_re_alloc_fw_channel() 71 creq = &rcfw->creq; in bng_re_alloc_fw_channel() 72 rcfw->res = res; in bng_re_alloc_fw_channel() [all …]
|
| H A D | bng_sp.c | 11 static bool bng_re_is_atomic_cap(struct bng_re_rcfw *rcfw) in bng_re_is_atomic_cap() argument 15 pcie_capability_read_word(rcfw->pdev, PCI_EXP_DEVCTL2, &pcie_ctl2); in bng_re_is_atomic_cap() 19 static void bng_re_query_version(struct bng_re_rcfw *rcfw, in bng_re_query_version() argument 32 rc = bng_re_rcfw_send_message(rcfw, &msg); in bng_re_query_version() 41 int bng_re_get_dev_attr(struct bng_re_rcfw *rcfw) in bng_re_get_dev_attr() argument 43 struct bng_re_dev_attr *attr = rcfw->res->dattr; in bng_re_get_dev_attr() 58 sbuf.sb = dma_alloc_coherent(&rcfw->pdev->dev, sbuf.size, in bng_re_get_dev_attr() 66 rc = bng_re_rcfw_send_message(rcfw, &msg); in bng_re_get_dev_attr() 115 bng_re_query_version(rcfw, attr->fw_ver); in bng_re_get_dev_attr() 126 attr->is_atomic = bng_re_is_atomic_cap(rcfw); in bng_re_get_dev_attr() [all …]
|
| H A D | bng_fw.h | 196 void bng_re_free_rcfw_channel(struct bng_re_rcfw *rcfw); 198 struct bng_re_rcfw *rcfw); 199 int bng_re_enable_fw_channel(struct bng_re_rcfw *rcfw, 202 void bng_re_disable_rcfw_channel(struct bng_re_rcfw *rcfw); 203 int bng_re_rcfw_start_irq(struct bng_re_rcfw *rcfw, int msix_vector, 205 void bng_re_rcfw_stop_irq(struct bng_re_rcfw *rcfw, bool kill); 206 int bng_re_rcfw_send_message(struct bng_re_rcfw *rcfw, 208 int bng_re_init_rcfw(struct bng_re_rcfw *rcfw, 210 int bng_re_deinit_rcfw(struct bng_re_rcfw *rcfw);
|
| H A D | bng_dev.c | 65 rdev->rcfw.res = NULL; in bng_re_destroy_chip_ctx() 79 rdev->rcfw.res = &rdev->bng_res; in bng_re_setup_chip_ctx() 273 rc = bng_re_deinit_rcfw(&rdev->rcfw); in bng_re_dev_uninit() 279 bng_re_disable_rcfw_channel(&rdev->rcfw); in bng_re_dev_uninit() 280 bng_re_net_ring_free(rdev, rdev->rcfw.creq.ring_id, in bng_re_dev_uninit() 282 bng_re_free_rcfw_channel(&rdev->rcfw); in bng_re_dev_uninit() 332 rc = bng_re_alloc_fw_channel(&rdev->bng_res, &rdev->rcfw); in bng_re_dev_init() 353 creq = &rdev->rcfw.creq; in bng_re_dev_init() 368 rc = bng_re_enable_fw_channel(&rdev->rcfw, in bng_re_dev_init() 376 rc = bng_re_get_dev_attr(&rdev->rcfw); in bng_re_dev_init() [all …]
|
| H A D | bng_sp.h | 46 int bng_re_get_dev_attr(struct bng_re_rcfw *rcfw);
|
| H A D | bng_re.h | 77 struct bng_re_rcfw rcfw; member
|
| /linux/drivers/infiniband/hw/bnxt_re/ |
| H A D | qplib_rcfw.c | 111 static int bnxt_re_is_fw_stalled(struct bnxt_qplib_rcfw *rcfw, in bnxt_re_is_fw_stalled() argument 117 crsqe = &rcfw->crsqe_tbl[cookie]; in bnxt_re_is_fw_stalled() 118 cmdq = &rcfw->cmdq; in bnxt_re_is_fw_stalled() 121 (rcfw->max_timeout * HZ))) { in bnxt_re_is_fw_stalled() 122 dev_warn_ratelimited(&rcfw->pdev->dev, in bnxt_re_is_fw_stalled() 126 rcfw->max_timeout * 1000, in bnxt_re_is_fw_stalled() 145 static int __wait_for_resp(struct bnxt_qplib_rcfw *rcfw, u16 cookie) in __wait_for_resp() argument 151 cmdq = &rcfw->cmdq; in __wait_for_resp() 152 crsqe = &rcfw->crsqe_tbl[cookie]; in __wait_for_resp() 163 secs_to_jiffies(rcfw->max_timeout)); in __wait_for_resp() [all …]
|
| H A D | qplib_sp.c | 58 static bool bnxt_qplib_is_atomic_cap(struct bnxt_qplib_rcfw *rcfw) in bnxt_qplib_is_atomic_cap() argument 62 if (!bnxt_qplib_is_chip_gen_p5_p7(rcfw->res->cctx)) in bnxt_qplib_is_atomic_cap() 65 pcie_capability_read_word(rcfw->pdev, PCI_EXP_DEVCTL2, &pcie_ctl2); in bnxt_qplib_is_atomic_cap() 69 void bnxt_qplib_query_version(struct bnxt_qplib_rcfw *rcfw) in bnxt_qplib_query_version() argument 77 attr = rcfw->res->dattr; in bnxt_qplib_query_version() 83 rc = bnxt_qplib_rcfw_send_message(rcfw, &msg); in bnxt_qplib_query_version() 92 int bnxt_qplib_get_dev_attr(struct bnxt_qplib_rcfw *rcfw) in bnxt_qplib_get_dev_attr() argument 94 struct bnxt_qplib_dev_attr *attr = rcfw->res->dattr; in bnxt_qplib_get_dev_attr() 105 cctx = rcfw->res->cctx; in bnxt_qplib_get_dev_attr() 111 sbuf.sb = dma_alloc_coherent(&rcfw->pdev->dev, sbuf.size, in bnxt_qplib_get_dev_attr() [all …]
|
| H A D | main.c | 158 rdev->rcfw.res = NULL; in bnxt_re_destroy_chip_ctx() 184 rdev->rcfw.res = &rdev->qplib_res; in bnxt_re_setup_chip_ctx() 312 bnxt_qplib_set_func_resources(&rdev->qplib_res, &rdev->rcfw, in bnxt_re_vf_res_config() 440 struct bnxt_qplib_rcfw *rcfw; in bnxt_re_stop_irq() local 448 rcfw = &rdev->rcfw; in bnxt_re_stop_irq() 451 set_bit(ERR_DEVICE_DETACHED, &rdev->rcfw.cmdq.flags); in bnxt_re_stop_irq() 453 wake_up_all(&rdev->rcfw.cmdq.waitq); in bnxt_re_stop_irq() 463 bnxt_qplib_rcfw_stop_irq(rcfw, false); in bnxt_re_stop_irq() 470 struct bnxt_qplib_rcfw *rcfw; in bnxt_re_start_irq() local 479 rcfw = &rdev->rcfw; in bnxt_re_start_irq() [all …]
|
| H A D | qplib_fp.c | 621 struct bnxt_qplib_rcfw *rcfw = res->rcfw; in bnxt_qplib_destroy_srq() local 635 rc = bnxt_qplib_rcfw_send_message(rcfw, &msg); in bnxt_qplib_destroy_srq() 645 struct bnxt_qplib_rcfw *rcfw = res->rcfw; in bnxt_qplib_create_srq() local 683 rc = bnxt_qplib_rcfw_send_message(rcfw, &msg); in bnxt_qplib_create_srq() 721 struct bnxt_qplib_rcfw *rcfw = res->rcfw; in bnxt_qplib_query_srq() local 735 sbuf.sb = dma_alloc_coherent(&rcfw->pdev->dev, sbuf.size, in bnxt_qplib_query_srq() 744 rc = bnxt_qplib_rcfw_send_message(rcfw, &msg); in bnxt_qplib_query_srq() 747 dma_free_coherent(&rcfw->pdev->dev, sbuf.size, in bnxt_qplib_query_srq() 819 struct bnxt_qplib_rcfw *rcfw = res->rcfw; in bnxt_qplib_create_qp1() local 904 rc = bnxt_qplib_rcfw_send_message(rcfw, &msg); in bnxt_qplib_create_qp1() [all …]
|
| H A D | qplib_sp.h | 331 int bnxt_qplib_get_dev_attr(struct bnxt_qplib_rcfw *rcfw); 333 struct bnxt_qplib_rcfw *rcfw, 352 int bnxt_qplib_get_roce_stats(struct bnxt_qplib_rcfw *rcfw, 354 int bnxt_qplib_qext_stat(struct bnxt_qplib_rcfw *rcfw, u32 fid, 358 int bnxt_qplib_read_context(struct bnxt_qplib_rcfw *rcfw, u8 type, u32 xid, 362 void bnxt_qplib_query_version(struct bnxt_qplib_rcfw *rcfw);
|
| H A D | bnxt_re.h | 191 struct bnxt_qplib_rcfw rcfw; member 274 rdev->rcfw.res->cctx->hwrm_intf_ver < HWRM_VERSION_READ_CTX) in bnxt_re_read_context_allowed()
|
| H A D | qplib_res.c | 858 kfree(res->rcfw->qp_tbl); in bnxt_qplib_free_res() 866 struct bnxt_qplib_rcfw *rcfw = res->rcfw; in bnxt_qplib_alloc_res() local 874 rcfw->qp_tbl_size = max_t(u32, BNXT_RE_MAX_QPC_COUNT + 1, dev_attr->max_qp); in bnxt_qplib_alloc_res() 875 rcfw->qp_tbl = kcalloc(rcfw->qp_tbl_size, sizeof(struct bnxt_qplib_qp_node), in bnxt_qplib_alloc_res() 877 if (!rcfw->qp_tbl) in bnxt_qplib_alloc_res()
|
| H A D | ib_verbs.c | 292 port_attr->gid_tbl_len = (rdev->rcfw.roce_mirror ? (dev_attr->max_sgid - 1) : in bnxt_re_query_port() 960 if (!rdev->rcfw.roce_mirror) in bnxt_re_del_unique_gid() 1621 if (!rdev->rcfw.roce_mirror) in bnxt_re_add_unique_gid() 4470 !rdev->rcfw.roce_mirror) in bnxt_re_create_flow()
|