Home
last modified time | relevance | path

Searched refs:pbl (Results 1 – 25 of 69) sorted by relevance

123

/Linux-v4.19/drivers/infiniband/hw/bnxt_re/
Dqplib_res.c56 static void __free_pbl(struct pci_dev *pdev, struct bnxt_qplib_pbl *pbl, in __free_pbl() argument
62 for (i = 0; i < pbl->pg_count; i++) { in __free_pbl()
63 if (pbl->pg_arr[i]) in __free_pbl()
64 dma_free_coherent(&pdev->dev, pbl->pg_size, in __free_pbl()
66 pbl->pg_arr[i] & in __free_pbl()
68 pbl->pg_map_arr[i]); in __free_pbl()
73 pbl->pg_arr[i] = NULL; in __free_pbl()
76 kfree(pbl->pg_arr); in __free_pbl()
77 pbl->pg_arr = NULL; in __free_pbl()
78 kfree(pbl->pg_map_arr); in __free_pbl()
[all …]
Dqplib_rcfw.c436 static int __get_pbl_pg_idx(struct bnxt_qplib_pbl *pbl) in __get_pbl_pg_idx() argument
438 return (pbl->pg_size == ROCE_PG_SIZE_4K ? in __get_pbl_pg_idx()
440 pbl->pg_size == ROCE_PG_SIZE_8K ? in __get_pbl_pg_idx()
442 pbl->pg_size == ROCE_PG_SIZE_64K ? in __get_pbl_pg_idx()
444 pbl->pg_size == ROCE_PG_SIZE_2M ? in __get_pbl_pg_idx()
446 pbl->pg_size == ROCE_PG_SIZE_8M ? in __get_pbl_pg_idx()
448 pbl->pg_size == ROCE_PG_SIZE_1G ? in __get_pbl_pg_idx()
477 __get_pbl_pg_idx(&ctx->qpc_tbl.pbl[level]); in bnxt_qplib_init_rcfw()
480 __get_pbl_pg_idx(&ctx->mrw_tbl.pbl[level]); in bnxt_qplib_init_rcfw()
483 __get_pbl_pg_idx(&ctx->srqc_tbl.pbl[level]); in bnxt_qplib_init_rcfw()
[all …]
Dqplib_fp.c532 struct bnxt_qplib_pbl *pbl; in bnxt_qplib_create_srq() local
558 pbl = &srq->hwq.pbl[PBL_LVL_0]; in bnxt_qplib_create_srq()
562 (pbl->pg_size == ROCE_PG_SIZE_4K ? in bnxt_qplib_create_srq()
564 pbl->pg_size == ROCE_PG_SIZE_8K ? in bnxt_qplib_create_srq()
566 pbl->pg_size == ROCE_PG_SIZE_64K ? in bnxt_qplib_create_srq()
568 pbl->pg_size == ROCE_PG_SIZE_2M ? in bnxt_qplib_create_srq()
570 pbl->pg_size == ROCE_PG_SIZE_8M ? in bnxt_qplib_create_srq()
572 pbl->pg_size == ROCE_PG_SIZE_1G ? in bnxt_qplib_create_srq()
575 req.pbl = cpu_to_le64(pbl->pg_map_arr[0]); in bnxt_qplib_create_srq()
721 struct bnxt_qplib_pbl *pbl; in bnxt_qplib_create_qp1() local
[all …]
/Linux-v4.19/include/linux/qed/
Dqed_chain.h119 } pbl; member
290 *p_next_elem = p_chain->pbl.pp_virt_addr_tbl[page_index]; in qed_chain_advance_page()
354 p_prod_page_idx = &p_chain->pbl.c.u16.prod_page_idx; in qed_chain_produce()
363 p_prod_page_idx = &p_chain->pbl.c.u32.prod_page_idx; in qed_chain_produce()
427 p_cons_page_idx = &p_chain->pbl.c.u16.cons_page_idx; in qed_chain_consume()
436 p_cons_page_idx = &p_chain->pbl.c.u32.cons_page_idx; in qed_chain_consume()
478 p_chain->pbl.c.u16.prod_page_idx = (u16)reset_val; in qed_chain_reset()
479 p_chain->pbl.c.u16.cons_page_idx = (u16)reset_val; in qed_chain_reset()
481 p_chain->pbl.c.u32.prod_page_idx = reset_val; in qed_chain_reset()
482 p_chain->pbl.c.u32.cons_page_idx = reset_val; in qed_chain_reset()
[all …]
/Linux-v4.19/drivers/infiniband/hw/qedr/
Dverbs.c533 struct qedr_pbl_info *pbl_info, struct qedr_pbl *pbl) in qedr_free_pbl() argument
539 if (!pbl[i].va) in qedr_free_pbl()
542 pbl[i].va, pbl[i].pa); in qedr_free_pbl()
545 kfree(pbl); in qedr_free_pbl()
648 struct qedr_pbl *pbl, in qedr_populate_pbls() argument
666 pbl_tbl = &pbl[1]; in qedr_populate_pbls()
668 pbl_tbl = pbl; in qedr_populate_pbls()
737 cq->latest_cqe = qed_chain_consume(&cq->pbl); in consume_cqe()
939 &cq->pbl, NULL); in qedr_create_cq()
943 page_cnt = qed_chain_get_page_cnt(&cq->pbl); in qedr_create_cq()
[all …]
Dqedr.h74 struct qed_chain pbl; member
284 struct qed_chain pbl; member
321 struct qed_chain pbl; member
343 qed_chain_get_capacity(p_info->pbl) \
349 struct qed_chain pbl; member
Dmain.c315 dev->ops->common->chain_free(dev->cdev, &dev->cnq_array[i].pbl); in qedr_free_resources()
376 &cnq->pbl, NULL); in qedr_alloc_resources()
388 i, qed_chain_get_cons_idx(&cnq->pbl)); in qedr_alloc_resources()
396 dev->ops->common->chain_free(dev->cdev, &dev->cnq_array[i].pbl); in qedr_alloc_resources()
468 sw_comp_cons = qed_chain_get_cons_idx(&cnq->pbl); in qedr_irq_handler()
474 cq_handle = (struct regpair *)qed_chain_consume(&cnq->pbl); in qedr_irq_handler()
508 sw_comp_cons = qed_chain_get_cons_idx(&cnq->pbl); in qedr_irq_handler()
808 page_cnt = qed_chain_get_page_cnt(&dev->cnq_array[i].pbl); in qedr_init_hw()
811 p_phys_table = qed_chain_get_pbl_phys(&dev->cnq_array[i].pbl); in qedr_init_hw()
/Linux-v4.19/drivers/infiniband/hw/cxgb4/
Dresource.c271 rdev->stats.pbl.cur += roundup(size, 1 << MIN_PBL_SHIFT); in c4iw_pblpool_alloc()
272 if (rdev->stats.pbl.cur > rdev->stats.pbl.max) in c4iw_pblpool_alloc()
273 rdev->stats.pbl.max = rdev->stats.pbl.cur; in c4iw_pblpool_alloc()
276 rdev->stats.pbl.fail++; in c4iw_pblpool_alloc()
294 rdev->stats.pbl.cur -= roundup(size, 1 << MIN_PBL_SHIFT); in c4iw_pblpool_free()
308 pbl_start = rdev->lldi.vr->pbl.start; in c4iw_pblpool_create()
309 pbl_chunk = rdev->lldi.vr->pbl.size; in c4iw_pblpool_create()
Ddevice.c491 dev->rdev.stats.pbl.total, dev->rdev.stats.pbl.cur, in stats_show()
492 dev->rdev.stats.pbl.max, dev->rdev.stats.pbl.fail); in stats_show()
533 dev->rdev.stats.pbl.max = 0; in stats_clear()
534 dev->rdev.stats.pbl.fail = 0; in stats_clear()
814 rdev->lldi.vr->pbl.start, in c4iw_rdev_open()
815 rdev->lldi.vr->pbl.size, rdev->lldi.vr->rq.start, in c4iw_rdev_open()
832 rdev->stats.pbl.total = rdev->lldi.vr->pbl.size; in c4iw_rdev_open()
954 return infop->vr->stag.size > 0 && infop->vr->pbl.size > 0 && in rdma_supported()
/Linux-v4.19/drivers/scsi/bnx2fc/
Dbnx2fc_tgt.c668 u32 *pbl; in bnx2fc_alloc_session_resc() local
723 pbl = (u32 *)tgt->rq_pbl; in bnx2fc_alloc_session_resc()
726 *pbl = (u32)page; in bnx2fc_alloc_session_resc()
727 pbl++; in bnx2fc_alloc_session_resc()
728 *pbl = (u32)((u64)page >> 32); in bnx2fc_alloc_session_resc()
729 pbl++; in bnx2fc_alloc_session_resc()
777 pbl = (u32 *)tgt->confq_pbl; in bnx2fc_alloc_session_resc()
780 *pbl = (u32)page; in bnx2fc_alloc_session_resc()
781 pbl++; in bnx2fc_alloc_session_resc()
782 *pbl = (u32)((u64)page >> 32); in bnx2fc_alloc_session_resc()
[all …]
Dbnx2fc_hwi.c1970 u32 *pbl; in bnx2fc_free_hash_table() local
1974 pbl = hba->hash_tbl_pbl; in bnx2fc_free_hash_table()
1975 if (pbl) { in bnx2fc_free_hash_table()
1980 dma_address = le32_to_cpu(*pbl); in bnx2fc_free_hash_table()
1981 ++pbl; in bnx2fc_free_hash_table()
1982 dma_address += ((u64)le32_to_cpu(*pbl)) << 32; in bnx2fc_free_hash_table()
1983 ++pbl; in bnx2fc_free_hash_table()
2011 u32 *pbl; in bnx2fc_allocate_hash_table() local
2052 pbl = hba->hash_tbl_pbl; in bnx2fc_allocate_hash_table()
2055 *pbl = cpu_to_le32((u32) paddr); in bnx2fc_allocate_hash_table()
[all …]
/Linux-v4.19/drivers/scsi/qedi/
Dqedi_main.c1420 struct scsi_bd *pbl; in qedi_alloc_bdq() local
1458 pbl = (struct scsi_bd *)qedi->bdq_pbl; in qedi_alloc_bdq()
1460 pbl->address.hi = in qedi_alloc_bdq()
1462 pbl->address.lo = in qedi_alloc_bdq()
1466 pbl, pbl->address.hi, pbl->address.lo, i); in qedi_alloc_bdq()
1467 pbl->opaque.iscsi_opaque.reserved_zero[0] = 0; in qedi_alloc_bdq()
1468 pbl->opaque.iscsi_opaque.reserved_zero[1] = 0; in qedi_alloc_bdq()
1469 pbl->opaque.iscsi_opaque.reserved_zero[2] = 0; in qedi_alloc_bdq()
1470 pbl->opaque.iscsi_opaque.opaque = cpu_to_le16(i); in qedi_alloc_bdq()
1471 pbl++; in qedi_alloc_bdq()
[all …]
/Linux-v4.19/Documentation/devicetree/bindings/net/
Dsamsung-sxgbe.txt15 - samsung,pbl: Integer, Programmable Burst Length.
45 samsung,pbl = <0x08>
Dstmmac.txt39 - snps,pbl Programmable Burst Length (tx and rx)
41 If set, DMA tx will use this value rather than snps,pbl.
43 If set, DMA rx will use this value rather than snps,pbl.
44 - snps,no-pbl-x8 Don't multiply the pbl/txpbl/rxpbl values by 8.
/Linux-v4.19/include/linux/
Dsxgbe_platform.h34 int pbl; member
/Linux-v4.19/drivers/net/ethernet/samsung/sxgbe/
Dsxgbe_dma.c47 int fix_burst, int pbl, dma_addr_t dma_tx, in sxgbe_dma_channel_init() argument
60 reg_val |= (pbl << SXGBE_DMA_TXPBL_LSHIFT); in sxgbe_dma_channel_init()
64 reg_val |= (pbl << SXGBE_DMA_RXPBL_LSHIFT); in sxgbe_dma_channel_init()
Dsxgbe_dma.h27 int pbl, dma_addr_t dma_tx, dma_addr_t dma_rx,
/Linux-v4.19/drivers/net/ethernet/tehuti/
Dtehuti.h319 struct pbl { struct
337 struct pbl pbl[0]; /* Fragments */ argument
Dtehuti.c1492 struct pbl *pbl = &txdd->pbl[0]; in bdx_tx_map_skb() local
1499 pbl->len = CPU_CHIP_SWAP32(db->wptr->len); in bdx_tx_map_skb()
1500 pbl->pa_lo = CPU_CHIP_SWAP32(L32_64(db->wptr->addr.dma)); in bdx_tx_map_skb()
1501 pbl->pa_hi = CPU_CHIP_SWAP32(H32_64(db->wptr->addr.dma)); in bdx_tx_map_skb()
1502 DBG("=== pbl len: 0x%x ================\n", pbl->len); in bdx_tx_map_skb()
1503 DBG("=== pbl pa_lo: 0x%x ================\n", pbl->pa_lo); in bdx_tx_map_skb()
1504 DBG("=== pbl pa_hi: 0x%x ================\n", pbl->pa_hi); in bdx_tx_map_skb()
1516 pbl++; in bdx_tx_map_skb()
1517 pbl->len = CPU_CHIP_SWAP32(db->wptr->len); in bdx_tx_map_skb()
1518 pbl->pa_lo = CPU_CHIP_SWAP32(L32_64(db->wptr->addr.dma)); in bdx_tx_map_skb()
[all …]
/Linux-v4.19/drivers/scsi/qedf/
Dqedf_main.c1043 u32 *pbl; in qedf_alloc_sq() local
1073 pbl = (u32 *)fcport->sq_pbl; in qedf_alloc_sq()
1076 *pbl = U64_LO(page); in qedf_alloc_sq()
1077 pbl++; in qedf_alloc_sq()
1078 *pbl = U64_HI(page); in qedf_alloc_sq()
1079 pbl++; in qedf_alloc_sq()
2637 struct scsi_bd *pbl; in qedf_alloc_bdq() local
2673 pbl = (struct scsi_bd *)qedf->bdq_pbl; in qedf_alloc_bdq()
2675 pbl->address.hi = cpu_to_le32(U64_HI(qedf->bdq[i].buf_dma)); in qedf_alloc_bdq()
2676 pbl->address.lo = cpu_to_le32(U64_LO(qedf->bdq[i].buf_dma)); in qedf_alloc_bdq()
[all …]
/Linux-v4.19/drivers/net/ethernet/stmicro/stmmac/
Dstmmac_pci.c110 plat->dma_cfg->pbl = 32; in stmmac_default_data()
211 plat->dma_cfg->pbl = 16; in quark_default_data()
Ddwmac1000_dma.c87 int txpbl = dma_cfg->txpbl ?: dma_cfg->pbl; in dwmac1000_dma_init()
88 int rxpbl = dma_cfg->rxpbl ?: dma_cfg->pbl; in dwmac1000_dma_init()
Dstmmac_platform.c502 of_property_read_u32(np, "snps,pbl", &dma_cfg->pbl); in stmmac_probe_config_dt()
503 if (!dma_cfg->pbl) in stmmac_probe_config_dt()
504 dma_cfg->pbl = DEFAULT_DMA_PBL; in stmmac_probe_config_dt()
/Linux-v4.19/drivers/infiniband/hw/nes/
Dnes_verbs.c786 __le64 *pbl = NULL; in nes_setup_virt_qp() local
800 pbl = (__le64 *) nespbl->pbl_vbase; /* points to first pbl entry */ in nes_setup_virt_qp()
805 …nesqp->hwqp.sq_pbase = (le32_to_cpu(((__le32 *)pbl)[0])) | ((u64)((le32_to_cpu(((__le32 *)pbl)[1])… in nes_setup_virt_qp()
822 pbl += sq_pbl_entries; in nes_setup_virt_qp()
823 …nesqp->hwqp.rq_pbase = (le32_to_cpu(((__le32 *)pbl)[0])) | ((u64)((le32_to_cpu(((__le32 *)pbl)[1])… in nes_setup_virt_qp()
858 pbl = (__le64 *)nespbl->pbl_vbase; in nes_setup_virt_qp()
860 *tpbl++ = *pbl++; in nes_setup_virt_qp()
863 *tpbl++ = *pbl++; in nes_setup_virt_qp()
2103 __le64 *pbl; in nes_reg_user_mr() local
2398 pbl = pci_alloc_consistent(nesdev->pcidev, nespbl->pbl_size, in nes_reg_user_mr()
[all …]
/Linux-v4.19/drivers/infiniband/hw/i40iw/
Di40iw_verbs.c1350 static inline u64 *i40iw_next_pbl_addr(u64 *pbl, in i40iw_next_pbl_addr() argument
1356 return ++pbl; in i40iw_next_pbl_addr()
1369 u64 *pbl, in i40iw_copy_user_pgaddrs() argument
1393 *pbl = cpu_to_le64(pg_addr & iwmr->page_msk); in i40iw_copy_user_pgaddrs()
1395 *pbl = cpu_to_le64(pg_addr); in i40iw_copy_user_pgaddrs()
1398 pbl = i40iw_next_pbl_addr(pbl, &pinfo, &idx); in i40iw_copy_user_pgaddrs()
1490 u64 *pbl; in i40iw_setup_pbles() local
1504 pbl = (u64 *)pinfo->addr; in i40iw_setup_pbles()
1506 pbl = iwmr->pgaddrmem; in i40iw_setup_pbles()
1509 i40iw_copy_user_pgaddrs(iwmr, pbl, level); in i40iw_setup_pbles()
[all …]

123