summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dc/core
diff options
context:
space:
mode:
authorSivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com>2018-05-18 17:05:52 -0400
committerAlex Deucher <alexander.deucher@amd.com>2018-08-27 11:10:57 -0500
commit27e2e207747981ca3161dec16cea304f8e46cd65 (patch)
tree4edbce5fb6ad5d0f40da62f011da6501dc45dcfe /drivers/gpu/drm/amd/display/dc/core
parent1e7e86c43f38d2cc0183ae2a440c70f3c6163883 (diff)
downloadlinux-27e2e207747981ca3161dec16cea304f8e46cd65.tar.bz2
drm/amd/display: Program vline interrupt on FAST update
Signed-off-by: SivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Reviewed-by: Anthony Koo <Anthony.Koo@amd.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/core')
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index 2d4a5a85f799..699cb6f51121 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -1350,6 +1350,13 @@ static void commit_planes_do_stream_update(struct dc *dc,
stream_update->adjust->v_total_min,
stream_update->adjust->v_total_max);
+ if (stream_update->periodic_fn_vsync_delta &&
+ pipe_ctx->stream_res.tg &&
+ pipe_ctx->stream_res.tg->funcs->program_vline_interrupt)
+ pipe_ctx->stream_res.tg->funcs->program_vline_interrupt(
+ pipe_ctx->stream_res.tg, &pipe_ctx->stream->timing,
+ pipe_ctx->stream->periodic_fn_vsync_delta);
+
/* Full fe update*/
if (update_type == UPDATE_TYPE_FAST)
continue;
@@ -1377,12 +1384,6 @@ static void commit_planes_do_stream_update(struct dc *dc,
pipe_ctx->stream_res.abm, stream->abm_level);
}
- if (stream_update->periodic_fn_vsync_delta &&
- pipe_ctx->stream_res.tg->funcs->program_vline_interrupt)
- pipe_ctx->stream_res.tg->funcs->program_vline_interrupt(
- pipe_ctx->stream_res.tg, &pipe_ctx->stream->timing,
- pipe_ctx->stream->periodic_fn_vsync_delta);
-
if (stream_update->hdr_static_metadata ||
stream_update->vrr_infopacket) {
resource_build_info_frame(pipe_ctx);