Lines Matching refs:bpid

544 	int blkaddr, bpid, err;
558 for (bpid = 0; bpid < bp->bpids.max; bpid++) {
559 if (bp->fn_map[bpid] == pcifunc) {
560 bp->ref_cnt[bpid]--;
561 if (bp->ref_cnt[bpid])
563 rvu_free_rsrc(&bp->bpids, bpid);
564 bp->fn_map[bpid] = 0;
576 u16 chan_base, chan, bpid;
600 bpid = cfg & GENMASK(8, 0);
602 rvu_free_rsrc(&bp->bpids, bpid - bp->free_pool_base);
603 for (bpid = 0; bpid < bp->bpids.max; bpid++) {
604 if (bp->fn_map[bpid] == pcifunc) {
605 bp->fn_map[bpid] = 0;
606 bp->ref_cnt[bpid] = 0;
618 int bpid, blkaddr, sdp_chan_base, err;
639 * cgx(0)_lmac(0)_chan(0 - 15) = bpid(0 - 15)
640 * cgx(0)_lmac(1)_chan(0 - 15) = bpid(16 - 31) ....
641 * cgx(1)_lmac(0)_chan(0 - 15) = bpid(64 - 79) ....
648 /* Assign bpid based on cgx, lmac and chan id */
649 bpid = (cgx_id * hw->lmac_per_cgx * NIX_BPIDS_PER_LMAC) +
653 bpid += chan_id;
654 if (bpid > bp->cgx_bpid_cnt)
659 /* Alloc bpid from the free pool */
661 bpid = rvu_alloc_rsrc(&bp->bpids);
662 if (bpid < 0) {
666 bp->fn_map[bpid] = req->hdr.pcifunc;
667 bp->ref_cnt[bpid]++;
668 bpid += bp->free_pool_base;
681 bpid = bp->cgx_bpid_cnt + req->chan_base + sdp_chan_base;
683 bpid += chan_id;
685 if (bpid > (bp->cgx_bpid_cnt + bp->sdp_bpid_cnt))
691 return bpid;
702 s16 bpid, bpid_base;
720 bpid = bpid_base;
723 if (bpid < 0) {
731 cfg | (bpid & GENMASK_ULL(8, 0)) | BIT_ULL(16));
733 bpid = rvu_nix_get_bpid(rvu, req, type, chan_id);
737 /* Map channel and bpid assign to it */
5416 val |= FIELD_PREP(CPT_INST_CREDIT_BPID, req->bpid);
5463 rsp->bpid = FIELD_GET(CPT_INST_CREDIT_BPID, val);