summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Wang <anthony1.wang@amd.com>2021-03-31 11:03:35 -0400
committerAlex Deucher <alexander.deucher@amd.com>2021-04-15 16:31:37 -0400
commit56d63782af9bbd1271bff1422a6a013123eade4d (patch)
tree9551a455d375f4fd8b2dfd922f2d8cf56987037f
parentfab8580107b88b1576a17f0e48b238caecc46d96 (diff)
drm/amd/display: Force vsync flip when reconfiguring MPCC
[Why] Underflow observed when disabling PIP overlay in-game when vsync is disabled, due to OTC master lock not working with game pipe which is immediate flip. [How] When performing a full update, override flip_immediate value to false for all planes, so that flip occurs on vsync. Signed-off-by: Anthony Wang <anthony1.wang@amd.com> Acked-by: Bindu Ramamurthy <bindur12@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index e74027a9354e..497e44ca98c1 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -2683,6 +2683,10 @@ static void commit_planes_for_stream(struct dc *dc,
plane_state->triplebuffer_flips = true;
}
}
+ if (update_type == UPDATE_TYPE_FULL) {
+ /* force vsync flip when reconfiguring pipes to prevent underflow */
+ plane_state->flip_immediate = false;
+ }
}
}