Lines Matching refs:vhca_ids
7 static bool verify_num_vhca_ids(struct mlx5_core_dev *mdev, u32 *vhca_ids,
13 /* Verify that all vhca_ids are in range [0, max_num_vhca_ids - 1] */
15 if (vhca_ids[i] >= max_num_vhca_id)
20 static bool rqt_verify_vhca_ids(struct mlx5_core_dev *mdev, u32 *vhca_ids,
23 if (!vhca_ids)
28 if (!verify_num_vhca_ids(mdev, vhca_ids, size))
43 static void fill_rqn_list(void *rqtc, u32 *rqns, u32 *vhca_ids, unsigned int size)
47 if (vhca_ids) {
51 MLX5_SET(rqtc, rqtc, rq_vhca[i].rq_vhca_id, vhca_ids[i]);
111 static int mlx5e_calc_indir_rqns(u32 *rss_rqns, u32 *rqns, u32 *rss_vhca_ids, u32 *vhca_ids,
131 if (vhca_ids)
132 rss_vhca_ids[i] = vhca_ids[ix];
139 u32 *rqns, u32 *vhca_ids, unsigned int num_rqns,
149 if (vhca_ids) {
158 err = mlx5e_calc_indir_rqns(rss_rqns, rqns, rss_vhca_ids, vhca_ids, num_rqns, hfunc, indir);
194 static int mlx5e_rqt_redirect(struct mlx5e_rqt *rqt, u32 *rqns, u32 *vhca_ids,
203 if (!rqt_verify_vhca_ids(rqt->mdev, vhca_ids, size))
206 entry_sz = vhca_ids ? MLX5_ST_SZ_BYTES(rq_vhca) : MLX5_ST_SZ_BYTES(rq_num);
217 fill_rqn_list(rqtc, rqns, vhca_ids, size);
230 int mlx5e_rqt_redirect_indir(struct mlx5e_rqt *rqt, u32 *rqns, u32 *vhca_ids,
237 if (!rqt_verify_vhca_ids(rqt->mdev, vhca_ids, num_rqns))
247 if (vhca_ids) {
256 err = mlx5e_calc_indir_rqns(rss_rqns, rqns, rss_vhca_ids, vhca_ids, num_rqns, hfunc, indir);