OSDN Git Service

drm/amd/display: move visual confirm recout adjustment to scaler
authorDmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Wed, 22 Feb 2017 23:14:52 +0000 (18:14 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 26 Sep 2017 21:16:35 +0000 (17:16 -0400)
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Acked-by: Harry Wentland <Harry.Wentland@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c
drivers/gpu/drm/amd/display/dc/dce/dce_transform.c
drivers/gpu/drm/amd/display/dc/dce110/dce110_transform_v.c

index 0ec2c4f..852932a 100644 (file)
@@ -980,11 +980,6 @@ bool dc_pre_update_surfaces_to_stream(
 
                        resource_build_scaling_params(
                                new_surfaces[i], &context->res_ctx.pipe_ctx[j]);
-
-                       if (dc->debug.surface_visual_confirm) {
-                               context->res_ctx.pipe_ctx[j].scl_data.recout.height -= 2;
-                               context->res_ctx.pipe_ctx[j].scl_data.recout.width -= 2;
-                       }
                }
 
        if (!core_dc->res_pool->funcs->validate_bandwidth(core_dc, context)) {
@@ -1267,10 +1262,6 @@ void dc_update_surfaces_for_stream(struct dc *dc,
                                        continue;
 
                                resource_build_scaling_params(updates[i].surface, pipe_ctx);
-                               if (dc->debug.surface_visual_confirm) {
-                                       pipe_ctx->scl_data.recout.height -= 2;
-                                       pipe_ctx->scl_data.recout.width -= 2;
-                               }
                        }
                }
 
index d8ffbff..c861fd7 100644 (file)
@@ -27,6 +27,7 @@
 #include "reg_helper.h"
 #include "opp.h"
 #include "basics/conversion.h"
+#include "dc.h"
 
 #define REG(reg) \
        (xfm_dce->regs->reg)
@@ -121,6 +122,11 @@ static void program_overscan(
        int overscan_bottom = data->v_active
                        - data->recout.y - data->recout.height;
 
+       if (xfm_dce->base.ctx->dc->debug.surface_visual_confirm) {
+               overscan_bottom += 2;
+               overscan_right += 2;
+       }
+
        if (overscan_right < 0) {
                BREAK_TO_DEBUGGER();
                overscan_right = 0;
index feb5f3c..2896399 100644 (file)
@@ -25,6 +25,7 @@
 
 #include "dce110_transform_v.h"
 #include "dm_services.h"
+#include "dc.h"
 #include "dce/dce_11_0_d.h"
 #include "dce/dce_11_0_sh_mask.h"
 
@@ -232,6 +233,11 @@ static void program_overscan(
        int overscan_right = data->h_active - data->recout.x - data->recout.width;
        int overscan_bottom = data->v_active - data->recout.y - data->recout.height;
 
+       if (xfm_dce->base.ctx->dc->debug.surface_visual_confirm) {
+               overscan_bottom += 2;
+               overscan_right += 2;
+       }
+
        if (overscan_right < 0) {
                BREAK_TO_DEBUGGER();
                overscan_right = 0;