Lines Matching defs:pfvf

109 	struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc);
113 if (!pfvf->nixlf || blkaddr < 0)
134 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc);
139 if (!pfvf->nixlf || blkaddr < 0)
155 struct rvu_pfvf *pfvf;
157 pfvf = rvu_get_pfvf(rvu, pcifunc);
159 if (!pfvf->nixlf || *blkaddr < 0)
330 struct rvu_pfvf *parent_pf, *pfvf = rvu_get_pfvf(rvu, pcifunc);
346 pfvf->cgx_lmac = rvu->pf2cgxlmac_map[pf];
347 rvu_get_cgx_lmac_id(pfvf->cgx_lmac, &cgx_id, &lmac_id);
355 pfvf->rx_chan_base = rvu_nix_chan_cgx(rvu, cgx_id, lmac_id, 0);
356 pfvf->tx_chan_base = pfvf->rx_chan_base;
357 pfvf->rx_chan_cnt = 1;
358 pfvf->tx_chan_cnt = 1;
362 rvu_npc_set_pkind(rvu, pkind, pfvf);
401 pfvf->rx_chan_base = rvu_nix_chan_lbk(rvu, lbkid, vf);
402 pfvf->tx_chan_base = vf & 0x1 ?
405 pfvf->rx_chan_cnt = 1;
406 pfvf->tx_chan_cnt = 1;
408 pfvf->lbkid = lbkid;
409 rvu_npc_set_pkind(rvu, NPC_RX_LBK_PKIND, pfvf);
411 pfvf->rx_chan_base,
412 pfvf->rx_chan_cnt);
443 pfvf->rx_chan_base = req_chan_base;
444 pfvf->rx_chan_cnt = req_chan_cnt;
445 pfvf->tx_chan_base = pfvf->rx_chan_base;
446 pfvf->tx_chan_cnt = pfvf->rx_chan_cnt;
450 pfvf->rx_chan_base,
451 pfvf->rx_chan_cnt);
459 pfvf->rx_chan_base, pfvf->mac_addr);
471 nixlf, pfvf->rx_chan_base);
473 pfvf->maxlen = NIC_HW_MIN_FRS;
474 pfvf->minlen = NIC_HW_MIN_FRS;
481 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc);
484 pfvf->maxlen = 0;
485 pfvf->minlen = 0;
577 struct rvu_pfvf *pfvf;
587 pfvf = rvu_get_pfvf(rvu, pcifunc);
593 chan_base = pfvf->rx_chan_base + req->chan_base;
620 struct rvu_pfvf *pfvf;
625 pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc);
647 rvu_get_cgx_lmac_id(pfvf->cgx_lmac, &cgx_id, &lmac_id);
677 sdp_chan_base = pfvf->rx_chan_base - NIX_CHAN_SDP_CH_START;
679 sdp_chan_base = pfvf->rx_chan_base - hw->sdp_chan_base;
700 struct rvu_pfvf *pfvf;
715 pfvf = rvu_get_pfvf(rvu, pcifunc);
719 chan_base = pfvf->rx_chan_base + req->chan_base;
847 static void nix_ctx_free(struct rvu *rvu, struct rvu_pfvf *pfvf)
849 kfree(pfvf->rq_bmap);
850 kfree(pfvf->sq_bmap);
851 kfree(pfvf->cq_bmap);
852 if (pfvf->rq_ctx)
853 qmem_free(rvu->dev, pfvf->rq_ctx);
854 if (pfvf->sq_ctx)
855 qmem_free(rvu->dev, pfvf->sq_ctx);
856 if (pfvf->cq_ctx)
857 qmem_free(rvu->dev, pfvf->cq_ctx);
858 if (pfvf->rss_ctx)
859 qmem_free(rvu->dev, pfvf->rss_ctx);
860 if (pfvf->nix_qints_ctx)
861 qmem_free(rvu->dev, pfvf->nix_qints_ctx);
862 if (pfvf->cq_ints_ctx)
863 qmem_free(rvu->dev, pfvf->cq_ints_ctx);
865 pfvf->rq_bmap = NULL;
866 pfvf->cq_bmap = NULL;
867 pfvf->sq_bmap = NULL;
868 pfvf->rq_ctx = NULL;
869 pfvf->sq_ctx = NULL;
870 pfvf->cq_ctx = NULL;
871 pfvf->rss_ctx = NULL;
872 pfvf->nix_qints_ctx = NULL;
873 pfvf->cq_ints_ctx = NULL;
877 struct rvu_pfvf *pfvf, int nixlf,
890 err = qmem_alloc(rvu->dev, &pfvf->rss_ctx, num_indices, hwctx_size);
895 (u64)pfvf->rss_ctx->iova);
988 struct rvu_pfvf *pfvf;
1002 pfvf = rvu_get_pfvf(rvu, pcifunc);
1010 if (!pfvf->nixlf || nixlf < 0)
1017 if (!pfvf->rq_ctx || req->qidx >= pfvf->rq_ctx->qsize)
1021 if (!pfvf->sq_ctx || req->qidx >= pfvf->sq_ctx->qsize)
1025 if (!pfvf->cq_ctx || req->qidx >= pfvf->cq_ctx->qsize)
1031 if (!(cfg & BIT_ULL(4)) || !pfvf->rss_ctx ||
1150 __set_bit(req->qidx, pfvf->rq_bmap);
1152 __set_bit(req->qidx, pfvf->sq_bmap);
1154 __set_bit(req->qidx, pfvf->cq_bmap);
1160 (test_bit(req->qidx, pfvf->rq_bmap) &
1163 __set_bit(req->qidx, pfvf->rq_bmap);
1165 __clear_bit(req->qidx, pfvf->rq_bmap);
1169 (test_bit(req->qidx, pfvf->sq_bmap) &
1172 __set_bit(req->qidx, pfvf->sq_bmap);
1174 __clear_bit(req->qidx, pfvf->sq_bmap);
1178 (test_bit(req->qidx, pfvf->cq_bmap) &
1181 __set_bit(req->qidx, pfvf->cq_bmap);
1183 __clear_bit(req->qidx, pfvf->cq_bmap);
1324 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc);
1330 if (!pfvf->cq_ctx || !pfvf->sq_ctx || !pfvf->rq_ctx)
1341 q_cnt = pfvf->cq_ctx->qsize;
1342 bmap = pfvf->cq_bmap;
1347 q_cnt = pfvf->sq_ctx->qsize;
1348 bmap = pfvf->sq_bmap;
1353 q_cnt = pfvf->rq_ctx->qsize;
1354 bmap = pfvf->rq_bmap;
1446 struct rvu_pfvf *pfvf;
1456 pfvf = rvu_get_pfvf(rvu, pcifunc);
1458 if (!pfvf->nixlf || blkaddr < 0)
1509 err = qmem_alloc(rvu->dev, &pfvf->rq_ctx, req->rq_cnt, hwctx_size);
1513 pfvf->rq_bmap = kcalloc(req->rq_cnt, sizeof(long), GFP_KERNEL);
1514 if (!pfvf->rq_bmap)
1518 (u64)pfvf->rq_ctx->iova);
1526 err = qmem_alloc(rvu->dev, &pfvf->sq_ctx, req->sq_cnt, hwctx_size);
1530 pfvf->sq_bmap = kcalloc(req->sq_cnt, sizeof(long), GFP_KERNEL);
1531 if (!pfvf->sq_bmap)
1535 (u64)pfvf->sq_ctx->iova);
1542 err = qmem_alloc(rvu->dev, &pfvf->cq_ctx, req->cq_cnt, hwctx_size);
1546 pfvf->cq_bmap = kcalloc(req->cq_cnt, sizeof(long), GFP_KERNEL);
1547 if (!pfvf->cq_bmap)
1551 (u64)pfvf->cq_ctx->iova);
1558 err = nixlf_rss_ctx_init(rvu, blkaddr, pfvf, nixlf, req->rss_sz,
1568 err = qmem_alloc(rvu->dev, &pfvf->cq_ints_ctx, qints, hwctx_size);
1573 (u64)pfvf->cq_ints_ctx->iova);
1582 err = qmem_alloc(rvu->dev, &pfvf->nix_qints_ctx, qints, hwctx_size);
1587 (u64)pfvf->nix_qints_ctx->iova);
1637 nix_ctx_free(rvu, pfvf);
1642 ether_addr_copy(rsp->mac_addr, pfvf->mac_addr);
1647 rsp->rx_chan_base = pfvf->rx_chan_base;
1648 rsp->tx_chan_base = pfvf->tx_chan_base;
1649 rsp->rx_chan_cnt = pfvf->rx_chan_cnt;
1650 rsp->tx_chan_cnt = pfvf->tx_chan_cnt;
1675 struct rvu_pfvf *pfvf;
1677 pfvf = rvu_get_pfvf(rvu, pcifunc);
1679 if (!pfvf->nixlf || blkaddr < 0)
1706 nix_ctx_free(rvu, pfvf);
1717 struct rvu_pfvf *pfvf;
1721 pfvf = rvu_get_pfvf(rvu, pcifunc);
1723 if (!pfvf->nixlf || blkaddr < 0)
3413 struct rvu_pfvf *pfvf;
3423 pfvf = rvu_get_pfvf(rvu, pcifunc & ~RVU_PFVF_FUNC_MASK);
3426 *mce_list = &pfvf->bcast_mce_list;
3427 *mce_idx = pfvf->bcast_mce_idx;
3429 *mce_list = &pfvf->mcast_mce_list;
3430 *mce_idx = pfvf->mcast_mce_idx;
3432 *mce_list = &pfvf->promisc_mce_list;
3433 *mce_idx = pfvf->promisc_mce_idx;
3492 struct rvu_pfvf *pfvf;
3505 pfvf = &rvu->pf[pf];
3508 if (pfvf->nix_blkaddr != nix_hw->blkaddr)
3512 pfvf->bcast_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3513 nix_mce_list_init(&pfvf->bcast_mce_list, numvfs + 1);
3516 pfvf->mcast_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3517 nix_mce_list_init(&pfvf->mcast_mce_list, numvfs + 1);
3520 pfvf->promisc_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3521 nix_mce_list_init(&pfvf->promisc_mce_list, numvfs + 1);
3533 pfvf->bcast_mce_idx + idx,
3541 pfvf->mcast_mce_idx + idx,
3549 pfvf->promisc_mce_idx + idx,
4335 struct rvu_pfvf *pfvf;
4341 pfvf = rvu_get_pfvf(rvu, pcifunc);
4344 if (!test_bit(PF_SET_VF_TRUSTED, &pfvf->flags) &&
4345 (from_vf && test_bit(PF_SET_VF_MAC, &pfvf->flags))) {
4351 ether_addr_copy(pfvf->mac_addr, req->mac_addr);
4354 pfvf->rx_chan_base, req->mac_addr);
4356 if (test_bit(PF_SET_VF_TRUSTED, &pfvf->flags) && from_vf)
4357 ether_addr_copy(pfvf->default_mac, req->mac_addr);
4369 struct rvu_pfvf *pfvf;
4374 pfvf = rvu_get_pfvf(rvu, pcifunc);
4376 ether_addr_copy(rsp->mac_addr, pfvf->mac_addr);
4386 struct rvu_pfvf *pfvf;
4389 pfvf = rvu_get_pfvf(rvu, pcifunc);
4392 pfvf->use_mce_list = req->mode & NIX_RX_MODE_USE_MCE ? true : false;
4394 nix_rx_multicast = rvu->hw->cap.nix_rx_multicast & pfvf->use_mce_list;
4404 if (is_vf(pcifunc) && !test_bit(PF_SET_VF_TRUSTED, &pfvf->flags) &&
4437 pfvf->rx_chan_base);
4446 pfvf->rx_chan_base,
4447 pfvf->rx_chan_cnt);
4459 struct rvu_pfvf *pfvf;
4465 pfvf = rvu_get_pfvf(rvu, pcifunc);
4466 pfvf->maxlen = req->maxlen;
4468 pfvf->minlen = req->minlen;
4478 pfvf = &rvu->hwvf[hwvf + vf];
4479 if (pfvf->maxlen > maxlen)
4480 maxlen = pfvf->maxlen;
4482 pfvf->minlen && pfvf->minlen < minlen)
4483 minlen = pfvf->minlen;
4487 pfvf = &rvu->pf[pf];
4488 if (pfvf->maxlen > maxlen)
4489 maxlen = pfvf->maxlen;
4491 pfvf->minlen && pfvf->minlen < minlen)
4492 minlen = pfvf->minlen;
4508 struct rvu_pfvf *pfvf;
4547 pfvf = rvu_get_pfvf(rvu, pcifunc);
4548 link = hw->cgx_links + pfvf->lbkid;
5131 struct rvu_pfvf *pfvf;
5145 pfvf = rvu_get_pfvf(rvu, pcifunc);
5146 set_bit(NIXLF_INITIALIZED, &pfvf->flags);
5157 struct rvu_pfvf *pfvf;
5169 pfvf = rvu_get_pfvf(rvu, pcifunc);
5170 clear_bit(NIXLF_INITIALIZED, &pfvf->flags);
5185 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc);
5203 clear_bit(NIXLF_INITIALIZED, &pfvf->flags);
5207 if (pfvf->sq_ctx) {
5214 if (pfvf->rq_ctx) {
5221 if (pfvf->cq_ctx) {
5233 if (pfvf->hw_rx_tstamp_en) {
5241 pfvf->hw_rx_tstamp_en = false;
5250 nix_ctx_free(rvu, pfvf);
5316 struct rvu_pfvf *pfvf;
5320 pfvf = rvu_get_pfvf(rvu, pcifunc);
5322 if (!pfvf->nixlf || blkaddr < 0)
5512 void rvu_nix_reset_mac(struct rvu_pfvf *pfvf, int pcifunc)
5518 ether_addr_copy(pfvf->mac_addr, pfvf->default_mac);