Lines Matching refs:iter
88 struct mlx4_icm_iter *iter) in mlx4_icm_first() argument
90 iter->icm = icm; in mlx4_icm_first()
91 iter->chunk = list_empty(&icm->chunk_list) ? in mlx4_icm_first()
94 iter->page_idx = 0; in mlx4_icm_first()
97 static inline int mlx4_icm_last(struct mlx4_icm_iter *iter) in mlx4_icm_last() argument
99 return !iter->chunk; in mlx4_icm_last()
102 static inline void mlx4_icm_next(struct mlx4_icm_iter *iter) in mlx4_icm_next() argument
104 if (++iter->page_idx >= iter->chunk->nsg) { in mlx4_icm_next()
105 if (iter->chunk->list.next == &iter->icm->chunk_list) { in mlx4_icm_next()
106 iter->chunk = NULL; in mlx4_icm_next()
110 iter->chunk = list_entry(iter->chunk->list.next, in mlx4_icm_next()
112 iter->page_idx = 0; in mlx4_icm_next()
116 static inline dma_addr_t mlx4_icm_addr(struct mlx4_icm_iter *iter) in mlx4_icm_addr() argument
118 return sg_dma_address(&iter->chunk->mem[iter->page_idx]); in mlx4_icm_addr()
121 static inline unsigned long mlx4_icm_size(struct mlx4_icm_iter *iter) in mlx4_icm_size() argument
123 return sg_dma_len(&iter->chunk->mem[iter->page_idx]); in mlx4_icm_size()