Lines Matching refs:iter
276 drm_atomic_helper_damage_iter_init(struct drm_atomic_helper_damage_iter *iter, in drm_atomic_helper_damage_iter_init() argument
280 memset(iter, 0, sizeof(*iter)); in drm_atomic_helper_damage_iter_init()
285 iter->clips = drm_helper_get_plane_damage_clips(state); in drm_atomic_helper_damage_iter_init()
286 iter->num_clips = drm_plane_get_damage_clips_count(state); in drm_atomic_helper_damage_iter_init()
289 iter->plane_src.x1 = state->src.x1 >> 16; in drm_atomic_helper_damage_iter_init()
290 iter->plane_src.y1 = state->src.y1 >> 16; in drm_atomic_helper_damage_iter_init()
291 iter->plane_src.x2 = (state->src.x2 >> 16) + !!(state->src.x2 & 0xFFFF); in drm_atomic_helper_damage_iter_init()
292 iter->plane_src.y2 = (state->src.y2 >> 16) + !!(state->src.y2 & 0xFFFF); in drm_atomic_helper_damage_iter_init()
294 if (!iter->clips || !drm_rect_equals(&state->src, &old_state->src)) { in drm_atomic_helper_damage_iter_init()
295 iter->clips = NULL; in drm_atomic_helper_damage_iter_init()
296 iter->num_clips = 0; in drm_atomic_helper_damage_iter_init()
297 iter->full_update = true; in drm_atomic_helper_damage_iter_init()
319 drm_atomic_helper_damage_iter_next(struct drm_atomic_helper_damage_iter *iter, in drm_atomic_helper_damage_iter_next() argument
324 if (iter->full_update) { in drm_atomic_helper_damage_iter_next()
325 *rect = iter->plane_src; in drm_atomic_helper_damage_iter_next()
326 iter->full_update = false; in drm_atomic_helper_damage_iter_next()
330 while (iter->curr_clip < iter->num_clips) { in drm_atomic_helper_damage_iter_next()
331 *rect = iter->clips[iter->curr_clip]; in drm_atomic_helper_damage_iter_next()
332 iter->curr_clip++; in drm_atomic_helper_damage_iter_next()
334 if (drm_rect_intersect(rect, &iter->plane_src)) { in drm_atomic_helper_damage_iter_next()
363 struct drm_atomic_helper_damage_iter iter; in drm_atomic_helper_damage_merged() local
372 drm_atomic_helper_damage_iter_init(&iter, old_state, state); in drm_atomic_helper_damage_merged()
373 drm_atomic_for_each_plane_damage(&iter, &clip) { in drm_atomic_helper_damage_merged()