Lines Matching refs:iter
270 drm_atomic_helper_damage_iter_init(struct drm_atomic_helper_damage_iter *iter, in drm_atomic_helper_damage_iter_init() argument
274 memset(iter, 0, sizeof(*iter)); in drm_atomic_helper_damage_iter_init()
279 iter->clips = drm_helper_get_plane_damage_clips(state); in drm_atomic_helper_damage_iter_init()
280 iter->num_clips = drm_plane_get_damage_clips_count(state); in drm_atomic_helper_damage_iter_init()
283 iter->plane_src.x1 = state->src.x1 >> 16; in drm_atomic_helper_damage_iter_init()
284 iter->plane_src.y1 = state->src.y1 >> 16; in drm_atomic_helper_damage_iter_init()
285 iter->plane_src.x2 = (state->src.x2 >> 16) + !!(state->src.x2 & 0xFFFF); in drm_atomic_helper_damage_iter_init()
286 iter->plane_src.y2 = (state->src.y2 >> 16) + !!(state->src.y2 & 0xFFFF); in drm_atomic_helper_damage_iter_init()
288 if (!iter->clips || !drm_rect_equals(&state->src, &old_state->src)) { in drm_atomic_helper_damage_iter_init()
289 iter->clips = NULL; in drm_atomic_helper_damage_iter_init()
290 iter->num_clips = 0; in drm_atomic_helper_damage_iter_init()
291 iter->full_update = true; in drm_atomic_helper_damage_iter_init()
313 drm_atomic_helper_damage_iter_next(struct drm_atomic_helper_damage_iter *iter, in drm_atomic_helper_damage_iter_next() argument
318 if (iter->full_update) { in drm_atomic_helper_damage_iter_next()
319 *rect = iter->plane_src; in drm_atomic_helper_damage_iter_next()
320 iter->full_update = false; in drm_atomic_helper_damage_iter_next()
324 while (iter->curr_clip < iter->num_clips) { in drm_atomic_helper_damage_iter_next()
325 *rect = iter->clips[iter->curr_clip]; in drm_atomic_helper_damage_iter_next()
326 iter->curr_clip++; in drm_atomic_helper_damage_iter_next()
328 if (drm_rect_intersect(rect, &iter->plane_src)) { in drm_atomic_helper_damage_iter_next()
357 struct drm_atomic_helper_damage_iter iter; in drm_atomic_helper_damage_merged() local
366 drm_atomic_helper_damage_iter_init(&iter, old_state, state); in drm_atomic_helper_damage_merged()
367 drm_atomic_for_each_plane_damage(&iter, &clip) { in drm_atomic_helper_damage_merged()