On Mon, Jun 03, 2019 at 05:34:11PM +0300, Pekka Paalanen wrote:
On Mon, 3 Jun 2019 16:28:48 +0200 Daniel Vetter daniel.vetter@ffwll.ch wrote:
drm_atomic_set_fence_for_plane() contains the main discussion from a driver pov, link to that from more places.
Cc: Pekka Paalanen pekka.paalanen@collabora.com Signed-off-by: Daniel Vetter daniel.vetter@intel.com Cc: Maarten Lankhorst maarten.lankhorst@linux.intel.com Cc: Maxime Ripard maxime.ripard@bootlin.com Cc: Sean Paul sean@poorly.run Cc: David Airlie airlied@linux.ie Cc: Daniel Vetter daniel@ffwll.ch
drivers/gpu/drm/drm_gem_framebuffer_helper.c | 6 ++++++ include/drm/drm_plane.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_gem_framebuffer_helper.c b/drivers/gpu/drm/drm_gem_framebuffer_helper.c index 6fd48efe288c..6791245963c3 100644 --- a/drivers/gpu/drm/drm_gem_framebuffer_helper.c +++ b/drivers/gpu/drm/drm_gem_framebuffer_helper.c @@ -284,6 +284,9 @@ EXPORT_SYMBOL_GPL(drm_gem_fb_create_with_dirty);
- There is no need for &drm_plane_helper_funcs.cleanup_fb hook for simple
- gem based framebuffer drivers which have their buffers always pinned in
- memory.
- See drm_atomic_set_fence_for_plane() for a discussion of implicit and
*/
- explicit fencing in atomic modeset updates.
int drm_gem_fb_prepare_fb(struct drm_plane *plane, struct drm_plane_state *state) @@ -314,6 +317,9 @@ EXPORT_SYMBOL_GPL(drm_gem_fb_prepare_fb);
- &dma_buf attached, extracts the exclusive fence and attaches it to plane
- state for the atomic helper to wait on. Drivers can use this as their
- &drm_simple_display_pipe_funcs.prepare_fb callback.
- See drm_atomic_set_fence_for_plane() for a discussion of implicit and
*/
- explicit fencing in atomic modeset updates.
int drm_gem_fb_simple_display_pipe_prepare_fb(struct drm_simple_display_pipe *pipe, struct drm_plane_state *plane_state) diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h index 6078c700d9ba..cd5903ad33f7 100644 --- a/include/drm/drm_plane.h +++ b/include/drm/drm_plane.h @@ -69,7 +69,7 @@ struct drm_plane_state { * * Optional fence to wait for before scanning out @fb. The core atomic * code will set this when userspace is using explicit fencing. Do not
* write this directly for a driver's implicit fence, use
* write this field directly for a driver's implicit fence, use
- drm_atomic_set_fence_for_plane() to ensure that an explicit fence is
- preserved.
Reviewed-by: Pekka Paalanen pekka.paalanen@collabora.com FWIW
And applied, thanks for taking a look. -Daniel