Lines Matching refs:fbc
853 struct mlx5_frag_buf_ctrl *fbc) in mlx5_init_fbc_offset() argument
855 fbc->frags = frags; in mlx5_init_fbc_offset()
856 fbc->log_stride = log_stride; in mlx5_init_fbc_offset()
857 fbc->log_sz = log_sz; in mlx5_init_fbc_offset()
858 fbc->sz_m1 = (1 << fbc->log_sz) - 1; in mlx5_init_fbc_offset()
859 fbc->log_frag_strides = PAGE_SHIFT - fbc->log_stride; in mlx5_init_fbc_offset()
860 fbc->frag_sz_m1 = (1 << fbc->log_frag_strides) - 1; in mlx5_init_fbc_offset()
861 fbc->strides_offset = strides_offset; in mlx5_init_fbc_offset()
866 struct mlx5_frag_buf_ctrl *fbc) in mlx5_init_fbc() argument
868 mlx5_init_fbc_offset(frags, log_stride, log_sz, 0, fbc); in mlx5_init_fbc()
871 static inline void *mlx5_frag_buf_get_wqe(struct mlx5_frag_buf_ctrl *fbc, in mlx5_frag_buf_get_wqe() argument
876 ix += fbc->strides_offset; in mlx5_frag_buf_get_wqe()
877 frag = ix >> fbc->log_frag_strides; in mlx5_frag_buf_get_wqe()
879 return fbc->frags[frag].buf + ((fbc->frag_sz_m1 & ix) << fbc->log_stride); in mlx5_frag_buf_get_wqe()
883 mlx5_frag_buf_get_idx_last_contig_stride(struct mlx5_frag_buf_ctrl *fbc, u32 ix) in mlx5_frag_buf_get_idx_last_contig_stride() argument
885 u32 last_frag_stride_idx = (ix + fbc->strides_offset) | fbc->frag_sz_m1; in mlx5_frag_buf_get_idx_last_contig_stride()
887 return min_t(u32, last_frag_stride_idx - fbc->strides_offset, fbc->sz_m1); in mlx5_frag_buf_get_idx_last_contig_stride()