From 30406ff85324bc64bf8a9bf5b3f4e75c23ea4abf Mon Sep 17 00:00:00 2001 From: Harry Wentland Date: Thu, 25 May 2017 18:00:37 -0400 Subject: [PATCH] drm/amd/display: Don't commit surfaces if no stream Signed-off-by: Harry Wentland Reviewed-by: Tony Cheng Acked-by: Harry Wentland Signed-off-by: Alex Deucher --- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c index 1fc8bbfcb4b9..7db04a487c21 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_types.c @@ -2549,6 +2549,9 @@ void amdgpu_dm_atomic_commit_tail( WARN_ON(!status); WARN_ON(!status->surface_count); + if (!acrtc->stream) + continue; + /*TODO How it works with MPO ?*/ if (!dc_commit_surfaces_to_stream( dm->dc, @@ -2606,8 +2609,12 @@ void amdgpu_dm_atomic_commit_tail( } /* update planes when needed per crtc*/ - for_each_crtc_in_state(state, pcrtc, old_crtc_state, j) - amdgpu_dm_commit_surfaces(state, dev, dm, pcrtc, &wait_for_vblank); + for_each_crtc_in_state(state, pcrtc, old_crtc_state, j) { + struct amdgpu_crtc *acrtc = to_amdgpu_crtc(pcrtc); + + if (acrtc->stream) + amdgpu_dm_commit_surfaces(state, dev, dm, pcrtc, &wait_for_vblank); + } for (i = 0; i < new_crtcs_count; i++) { /* -- 2.30.2