diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/0056-drm-amd-display-Added-timing-sync-trace.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/0056-drm-amd-display-Added-timing-sync-trace.patch | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/0056-drm-amd-display-Added-timing-sync-trace.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/0056-drm-amd-display-Added-timing-sync-trace.patch deleted file mode 100644 index 5b0387e8..00000000 --- a/common/recipes-kernel/linux/linux-yocto-4.14.71/0056-drm-amd-display-Added-timing-sync-trace.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 8621808029f8a9d604aaabc934e4dc25847381b4 Mon Sep 17 00:00:00 2001 -From: Yongqiang Sun <yongqiang.sun@amd.com> -Date: Thu, 8 Dec 2016 09:47:11 -0500 -Subject: [PATCH 0056/4131] drm/amd/display: Added timing sync trace. - -Signed-off-by: Yongqiang Sun <yongqiang.sun@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> ---- - drivers/gpu/drm/amd/display/dc/core/dc.c | 4 ++- - drivers/gpu/drm/amd/display/dc/core/dc_debug.c | 32 ++++++++++++++++++++++ - drivers/gpu/drm/amd/display/dc/dc.h | 1 + - .../amd/display/dc/dce110/dce110_hw_sequencer.c | 1 - - .../gpu/drm/amd/display/include/logger_interface.h | 5 ++++ - 5 files changed, 41 insertions(+), 2 deletions(-) - -diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c -index 8e1d695..de99d71 100644 ---- a/drivers/gpu/drm/amd/display/dc/core/dc.c -+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c -@@ -1488,8 +1488,10 @@ void dc_update_surfaces_for_target(struct dc *dc, struct dc_surface_update *upda - core_dc->hwss.prepare_pipe_for_context( - core_dc, pipe_ctx, context); - } -- if (apply_ctx) -+ if (apply_ctx) { - core_dc->hwss.apply_ctx_for_surface(core_dc, surface, context); -+ context_timing_trace(dc, &context->res_ctx); -+ } - } - - for (i = context->res_ctx.pool->pipe_count - 1; i >= 0; i--) { -diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_debug.c b/drivers/gpu/drm/amd/display/dc/core/dc_debug.c -index 8ca0f1e..78b8e0c 100644 ---- a/drivers/gpu/drm/amd/display/dc/core/dc_debug.c -+++ b/drivers/gpu/drm/amd/display/dc/core/dc_debug.c -@@ -22,6 +22,13 @@ - ##__VA_ARGS__); \ - } while (0) - -+#define TIMING_TRACE(...) do {\ -+ if (dc->debug.timing_trace) \ -+ dm_logger_write(logger, \ -+ LOG_SYNC, \ -+ ##__VA_ARGS__); \ -+} while (0) -+ - void pre_surface_trace( - const struct dc *dc, - const struct dc_surface *const *surfaces, -@@ -268,3 +275,28 @@ void post_surface_trace(const struct dc *dc) - SURFACE_TRACE("post surface process.\n"); - - } -+ -+void context_timing_trace( -+ const struct dc *dc, -+ struct resource_context *res_ctx) -+{ -+ int i; -+ struct core_dc *core_dc = DC_TO_CORE(dc); -+ struct dal_logger *logger = core_dc->ctx->logger; -+ -+ for (i = 0; i < core_dc->res_pool->pipe_count; i++) { -+ struct pipe_ctx *pipe_ctx = &res_ctx->pipe_ctx[i]; -+ int h_pos = 0; -+ int v_pos = 0; -+ -+ if (pipe_ctx->stream == NULL) -+ continue; -+ -+ pipe_ctx->tg->funcs->get_position(pipe_ctx->tg, &h_pos, &v_pos); -+ TIMING_TRACE("Pipe_%d H_tot:%d V_tot:%d H_pos:%d V_pos:%d\n", -+ pipe_ctx->pipe_idx, -+ pipe_ctx->stream->public.timing.h_total, -+ pipe_ctx->stream->public.timing.v_total, -+ h_pos, v_pos); -+ } -+} -diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h -index 5f60800..454485b 100644 ---- a/drivers/gpu/drm/amd/display/dc/dc.h -+++ b/drivers/gpu/drm/amd/display/dc/dc.h -@@ -140,6 +140,7 @@ struct dc_debug { - bool max_disp_clk; - bool target_trace; - bool surface_trace; -+ bool timing_trace; - bool validation_trace; - bool disable_stutter; - bool disable_dcc; -diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c -index 6ad23f3..99937fa 100644 ---- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c -+++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c -@@ -1892,7 +1892,6 @@ static void dce110_apply_ctx_for_surface( - program_blender(dc, pipe_ctx); - - } -- - } - - static void dce110_power_down_fe(struct core_dc *dc, struct pipe_ctx *pipe) -diff --git a/drivers/gpu/drm/amd/display/include/logger_interface.h b/drivers/gpu/drm/amd/display/include/logger_interface.h -index b58d30d..08a6911 100644 ---- a/drivers/gpu/drm/amd/display/include/logger_interface.h -+++ b/drivers/gpu/drm/amd/display/include/logger_interface.h -@@ -31,6 +31,7 @@ - struct dc_context; - struct dc_link; - struct dc_surface_update; -+struct resource_context; - - /* - * -@@ -85,6 +86,10 @@ void update_surface_trace( - - void post_surface_trace(const struct dc *dc); - -+void context_timing_trace( -+ const struct dc *dc, -+ struct resource_context *res_ctx); -+ - - /* Any function which is empty or have incomplete implementation should be - * marked by this macro. --- -2.7.4 - |