Blob Blame History Raw
From: Harry Wentland <harry.wentland@amd.com>
Date: Thu, 27 Apr 2017 17:13:34 -0400
Subject: drm/amd/display: Use MED update type if clip position changes
Git-commit: e61a04f1af6187caebcad69ff72b571179b3dde9
Patch-mainline: v4.15-rc1
References: FATE#326289 FATE#326079 FATE#326049 FATE#322398 FATE#326166

Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Harry Wentland <Harry.Wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
 drivers/gpu/drm/amd/display/dc/core/dc.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -1143,7 +1143,7 @@ static enum surface_update_type  get_sca
 		return UPDATE_TYPE_FULL;
 
 	/* Check Clip rectangles if not equal
-	 * difference is in offsets == > UPDATE_TYPE_FAST
+	 * difference is in offsets == > UPDATE_TYPE_MED
 	 * difference is in dimensions == > UPDATE_TYPE_FULL
 	 */
 	if (memcmp(&u->scaling_info->clip_rect,
@@ -1152,7 +1152,7 @@ static enum surface_update_type  get_sca
 			u->surface->clip_rect.height) &&
 			(u->scaling_info->clip_rect.width ==
 			u->surface->clip_rect.width)) {
-			return UPDATE_TYPE_FAST;
+			return UPDATE_TYPE_MED;
 		} else {
 			return UPDATE_TYPE_FULL;
 		}
@@ -1326,8 +1326,7 @@ void dc_update_surfaces_and_stream(struc
 					srf_updates[i].plane_info->dcc;
 		}
 
-		/* not sure if we still need this */
-		if (update_type == UPDATE_TYPE_FULL) {
+		if (update_type >= UPDATE_TYPE_MED) {
 			for (j = 0; j < core_dc->res_pool->pipe_count; j++) {
 				struct pipe_ctx *pipe_ctx = &context->res_ctx.pipe_ctx[j];