Commit 2227a7a2 authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm/vc4: Always obey implicit sync

parent 9d54fcd5
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -861,18 +861,21 @@ static int vc4_prepare_fb(struct drm_plane *plane,
	struct dma_fence *fence;
	int ret;

	if ((plane->state->fb == state->fb) || !state->fb)
	if (!state->fb)
		return 0;

	bo = to_vc4_bo(&drm_fb_cma_get_gem_obj(state->fb, 0)->base);

	fence = reservation_object_get_excl_rcu(bo->resv);
	drm_atomic_set_fence_for_plane(state, fence);

	if (plane->state->fb == state->fb)
		return 0;

	ret = vc4_bo_inc_usecnt(bo);
	if (ret)
		return ret;

	fence = reservation_object_get_excl_rcu(bo->resv);
	drm_atomic_set_fence_for_plane(state, fence);

	return 0;
}