Lines Matching defs:mcast

175 static int nix_alloc_mce_list(struct nix_mcast *mcast, int count, u8 dir)
180 if (!mcast)
183 mce_counter = &mcast->mce_counter[dir];
191 static void nix_free_mce_list(struct nix_mcast *mcast, int count, int start, u8 dir)
195 if (!mcast)
198 mce_counter = &mcast->mce_counter[dir];
1039 if (!nix_hw->mcast.mce_ctx ||
3350 struct nix_mcast *mcast;
3372 mcast = &nix_hw->mcast;
3373 mutex_lock(&mcast->mce_lock);
3405 mutex_unlock(&mcast->mce_lock);
3490 struct nix_mcast *mcast = &nix_hw->mcast;
3512 pfvf->bcast_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3516 pfvf->mcast_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3520 pfvf->promisc_mce_idx = nix_alloc_mce_list(mcast, numvfs + 1, NIX_MCAST_INGRESS);
3561 struct nix_mcast *mcast = &nix_hw->mcast;
3569 mcast->mce_counter[NIX_MCAST_INGRESS].max = 256UL << MC_TBL_SIZE;
3570 err = rvu_alloc_bitmap(&mcast->mce_counter[NIX_MCAST_INGRESS]);
3575 mcast->mce_counter[NIX_MCAST_EGRESS].max = MC_TX_MAX;
3576 err = rvu_alloc_bitmap(&mcast->mce_counter[NIX_MCAST_EGRESS]);
3578 rvu_free_bitmap(&mcast->mce_counter[NIX_MCAST_INGRESS]);
3583 err = qmem_alloc(rvu->dev, &mcast->mce_ctx,
3584 mcast->mce_counter[NIX_MCAST_INGRESS].max, size);
3586 rvu_free_bitmap(&mcast->mce_counter[NIX_MCAST_INGRESS]);
3587 rvu_free_bitmap(&mcast->mce_counter[NIX_MCAST_EGRESS]);
3592 (u64)mcast->mce_ctx->iova);
3600 err = qmem_alloc(rvu->dev, &mcast->mcast_buf,
3603 rvu_free_bitmap(&mcast->mce_counter[NIX_MCAST_INGRESS]);
3604 rvu_free_bitmap(&mcast->mce_counter[NIX_MCAST_EGRESS]);
3609 (u64)mcast->mcast_buf->iova);
3612 mcast->replay_pkind = rvu_alloc_rsrc(&hw->pkind.rsrc);
3615 BIT_ULL(63) | (mcast->replay_pkind << 24) |
3618 mutex_init(&mcast->mce_lock);
4413 /* add/del this PF_FUNC to/from mcast pkt replication list */
5013 struct nix_mcast *mcast;
5038 mcast = &nix_hw->mcast;
5039 qmem_free(rvu->dev, mcast->mce_ctx);
5040 qmem_free(rvu->dev, mcast->mcast_buf);
5041 mutex_destroy(&mcast->mce_lock);
6309 struct nix_mcast *mcast;
6339 mcast = &nix_hw->mcast;
6340 mutex_lock(&mcast->mce_lock);
6347 nix_free_mce_list(mcast, elem->mcast_mce_list.count,
6350 mutex_unlock(&mcast->mce_lock);
6374 struct nix_mcast *mcast;
6416 mcast = &nix_hw->mcast;
6417 mutex_lock(&mcast->mce_lock);
6426 nix_free_mce_list(mcast, prev_count, elem->mce_start_index, elem->dir);
6428 elem->mce_start_index = nix_alloc_mce_list(mcast, new_count, elem->dir);
6442 nix_free_mce_list(mcast, new_count, elem->mce_start_index, elem->dir);
6444 elem->mce_start_index = nix_alloc_mce_list(mcast,
6463 nix_free_mce_list(mcast, prev_count, elem->mce_start_index, elem->dir);
6465 elem->mce_start_index = nix_alloc_mce_list(mcast, new_count, elem->dir);
6468 nix_free_mce_list(mcast, new_count, elem->mce_start_index, elem->dir);
6469 elem->mce_start_index = nix_alloc_mce_list(mcast, prev_count, elem->dir);
6492 mutex_unlock(&mcast->mce_lock);