Explorar o código

drm/imx: use drm_atomic_set_fence_for_plane() to set the fence

drm_atomic_set_fence_for_plane() is smart and won't overwrite
plane_state->fence if the user already set an explicit fence there.

Cc: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1478513013-3221-2-git-send-email-gustavo@padovan.org
Gustavo Padovan %!s(int64=9) %!d(string=hai) anos
pai
achega
aee2586490
Modificáronse 1 ficheiros con 4 adicións e 2 borrados
  1. 4 2
      drivers/gpu/drm/imx/imx-drm-core.c

+ 4 - 2
drivers/gpu/drm/imx/imx-drm-core.c

@@ -158,6 +158,7 @@ static int imx_drm_atomic_commit(struct drm_device *dev,
 	struct drm_plane_state *plane_state;
 	struct drm_plane_state *plane_state;
 	struct drm_plane *plane;
 	struct drm_plane *plane;
 	struct dma_buf *dma_buf;
 	struct dma_buf *dma_buf;
+	struct dma_fence *fence;
 	int i;
 	int i;
 
 
 	/*
 	/*
@@ -170,8 +171,9 @@ static int imx_drm_atomic_commit(struct drm_device *dev,
 							 0)->base.dma_buf;
 							 0)->base.dma_buf;
 			if (!dma_buf)
 			if (!dma_buf)
 				continue;
 				continue;
-			plane_state->fence =
-				reservation_object_get_excl_rcu(dma_buf->resv);
+			fence = reservation_object_get_excl_rcu(dma_buf->resv);
+
+			drm_atomic_set_fence_for_plane(plane_state, fence);
 		}
 		}
 	}
 	}