Skip to content

Commit 41ef8fb

Browse files
AMD-aricalexdeucher
authored andcommitted
drm/amd/display: Fix FreeSync when RGB MPO in use
[WHY] We should skip programming manual trigger on non-primary planes when MPO is enabled. [HOW] Implement an explicit mechanism for skipping manual trigger programming for planes that shouldn't cause the frame to end. Signed-off-by: Aric Cyr <[email protected]> Reviewed-by: Anthony Koo <[email protected]> Acked-by: Aurabindo Pillai <[email protected]> Acked-by: Krunoslav Kovac <[email protected]> Tested-by: Daniel Wheeler <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
1 parent 9c82354 commit 41ef8fb

File tree

2 files changed

+4
-1
lines changed
  • drivers/gpu/drm/amd/display/dc

2 files changed

+4
-1
lines changed

drivers/gpu/drm/amd/display/dc/core/dc.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2833,7 +2833,8 @@ static void commit_planes_for_stream(struct dc *dc,
28332833

28342834
if (pipe_ctx->bottom_pipe || pipe_ctx->next_odm_pipe ||
28352835
!pipe_ctx->stream || pipe_ctx->stream != stream ||
2836-
!pipe_ctx->plane_state->update_flags.bits.addr_update)
2836+
!pipe_ctx->plane_state->update_flags.bits.addr_update ||
2837+
pipe_ctx->plane_state->skip_manual_trigger)
28372838
continue;
28382839

28392840
if (pipe_ctx->stream_res.tg->funcs->program_manual_trigger)

drivers/gpu/drm/amd/display/dc/dc.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -907,6 +907,8 @@ struct dc_plane_state {
907907

908908
union surface_update_flags update_flags;
909909
bool flip_int_enabled;
910+
bool skip_manual_trigger;
911+
910912
/* private to DC core */
911913
struct dc_plane_status status;
912914
struct dc_context *ctx;

0 commit comments

Comments
 (0)