Lines Matching refs:pbl_info
205 page_cnt = srq->usrq.pbl_info.num_pbes; in qlnxr_create_srq()
1152 qlnxr_free_pbl(struct qlnxr_dev *dev, struct qlnxr_pbl_info *pbl_info, in qlnxr_free_pbl() argument
1162 for (i = 0; i < pbl_info->num_pbls; i++) { in qlnxr_free_pbl()
1166 pbl_info->pbl_size); in qlnxr_free_pbl()
1183 struct qlnxr_pbl_info *pbl_info, gfp_t flags) in qlnxr_alloc_pbl_tbl() argument
1196 pbl_table = kzalloc(sizeof(*pbl_table) * pbl_info->num_pbls, flags); in qlnxr_alloc_pbl_tbl()
1203 for (i = 0; i < pbl_info->num_pbls; i++) { in qlnxr_alloc_pbl_tbl()
1204 va = qlnx_dma_alloc_coherent(&dev->ha->cdev, &pa, pbl_info->pbl_size); in qlnxr_alloc_pbl_tbl()
1209 memset(va, 0, pbl_info->pbl_size); in qlnxr_alloc_pbl_tbl()
1218 for (i = 0; i < pbl_info->num_pbls - 1; i++) in qlnxr_alloc_pbl_tbl()
1225 qlnxr_free_pbl(dev, pbl_info, pbl_table); in qlnxr_alloc_pbl_tbl()
1233 struct qlnxr_pbl_info *pbl_info, in qlnxr_prepare_pbl_tbl() argument
1266 pbl_info->two_layered = true; in qlnxr_prepare_pbl_tbl()
1272 pbl_info->two_layered = false; in qlnxr_prepare_pbl_tbl()
1275 pbl_info->num_pbls = num_pbls; in qlnxr_prepare_pbl_tbl()
1276 pbl_info->pbl_size = pbl_size; in qlnxr_prepare_pbl_tbl()
1277 pbl_info->num_pbes = num_pbes; in qlnxr_prepare_pbl_tbl()
1280 pbl_info->num_pbes, pbl_info->num_pbls, pbl_info->pbl_size); in qlnxr_prepare_pbl_tbl()
1287 struct qlnxr_pbl *pbl, struct qlnxr_pbl_info *pbl_info) in qlnxr_populate_pbls() argument
1300 if (!pbl_info) { in qlnxr_populate_pbls()
1305 if (!pbl_info->num_pbes) { in qlnxr_populate_pbls()
1313 if (pbl_info->two_layered) in qlnxr_populate_pbls()
1351 if (total_num_pbes == pbl_info->num_pbes) in qlnxr_populate_pbls()
1358 (pbl_info->pbl_size / sizeof(u64))) { in qlnxr_populate_pbls()
1388 qlnxr_free_pbl(dev, &info->pbl_info, pbl); in free_mr_info()
1410 rc = qlnxr_prepare_pbl_tbl(dev, &info->pbl_info, in qlnxr_init_mr_info()
1417 info->pbl_table = qlnxr_alloc_pbl_tbl(dev, &info->pbl_info, GFP_KERNEL); in qlnxr_init_mr_info()
1430 tmp = qlnxr_alloc_pbl_tbl(dev, &info->pbl_info, GFP_KERNEL); in qlnxr_init_mr_info()
1500 &mr->info.pbl_info); in qlnxr_reg_user_mr()
1520 mr->hw_mr.pbl_two_level = mr->info.pbl_info.two_layered; in qlnxr_reg_user_mr()
1521 mr->hw_mr.pbl_page_size_log = ilog2(mr->info.pbl_info.pbl_size); in qlnxr_reg_user_mr()
1549 qlnxr_free_pbl(dev, &mr->info.pbl_info, mr->info.pbl_table); in qlnxr_reg_user_mr()
1570 qlnxr_free_pbl(dev, &mr->info.pbl_info, mr->info.pbl_table); in qlnxr_dereg_mr()
1678 rc = qlnxr_prepare_pbl_tbl(dev, &q->pbl_info, page_cnt, in qlnxr_init_user_queue()
1688 q->pbl_tbl = qlnxr_alloc_pbl_tbl(dev, &q->pbl_info, GFP_KERNEL); in qlnxr_init_user_queue()
1696 qlnxr_populate_pbls(dev, q->umem, q->pbl_tbl, &q->pbl_info); in qlnxr_init_user_queue()
1782 page_cnt = cq->q.pbl_info.num_pbes; in qlnxr_create_cq()
1865 qlnxr_free_pbl(dev, &cq->q.pbl_info, cq->q.pbl_tbl); in qlnxr_create_cq()
1929 qlnxr_free_pbl(dev, &cq->q.pbl_info, cq->q.pbl_tbl); in qlnxr_destroy_cq()
2293 qlnxr_free_pbl(srq->dev, &srq->usrq.pbl_info, srq->usrq.pbl_tbl); in qlnxr_free_srq_user_params()
2348 qlnxr_free_pbl(srq->dev, &srq->usrq.pbl_info, srq->usrq.pbl_tbl); in qlnxr_init_srq_user_params()
2546 &qp->usq.pbl_info); in qlnxr_iwarp_populate_user_qp()
2557 &qp->urq.pbl_info); in qlnxr_iwarp_populate_user_qp()
2619 in_params.sq_num_pages = qp->usq.pbl_info.num_pbes; in qlnxr_create_user_qp()
2623 in_params.rq_num_pages = qp->urq.pbl_info.num_pbes; in qlnxr_create_user_qp()
5404 mr->hw_mr.pbl_two_level = mr->info.pbl_info.two_layered; in __qlnxr_alloc_mr()
5405 mr->hw_mr.pbl_page_size_log = ilog2(mr->info.pbl_info.pbl_size); in __qlnxr_alloc_mr()
5476 if (unlikely(mr->npages == mr->info.pbl_info.num_pbes)) { in qlnxr_set_page()
5484 pbes_in_page = mr->info.pbl_info.pbl_size / sizeof(u64); in qlnxr_set_page()