[PATCH 3/5] drm/amd/display: fix timing trace debug print
Harry Wentland
harry.wentland at amd.com
Wed Jan 25 20:33:56 UTC 2017
From: Dmytro Laktyushkin <Dmytro.Laktyushkin at amd.com>
Change-Id: I560277a2348cbae9306d454e17ebf93136568034
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin at amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng at amd.com>
Acked-by: Harry Wentland <Harry.Wentland at amd.com>
---
drivers/gpu/drm/amd/display/dc/core/dc.c | 4 +++-
drivers/gpu/drm/amd/display/dc/core/dc_debug.c | 18 ++++++++++++------
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index c627b907528c..c863bffab989 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -1563,9 +1563,11 @@ void dc_update_surfaces_for_stream(struct dc *dc,
if (update_type == UPDATE_TYPE_FULL) {
/* only apply for top pipe */
- if (!pipe_ctx->top_pipe)
+ if (!pipe_ctx->top_pipe) {
core_dc->hwss.apply_ctx_for_surface(core_dc,
surface, context);
+ context_timing_trace(dc, &context->res_ctx);
+ }
} else if (updates[i].flip_addr)
core_dc->hwss.update_plane_addr(core_dc, pipe_ctx);
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 959c3f372e73..85ddf5fc4291 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_debug.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_debug.c
@@ -279,20 +279,26 @@ void context_timing_trace(
int i;
struct core_dc *core_dc = DC_TO_CORE(dc);
struct dal_logger *logger = core_dc->ctx->logger;
+ int h_pos[MAX_PIPES], v_pos[MAX_PIPES];
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->tg->funcs->get_position(pipe_ctx->tg, &h_pos[i], &v_pos[i]);
+ }
+ for (i = 0; i < core_dc->res_pool->pipe_count; i++) {
+ struct pipe_ctx *pipe_ctx = &res_ctx->pipe_ctx[i];
+
+ if (pipe_ctx->stream == NULL)
+ continue;
+
+ TIMING_TRACE("OTG_%d H_tot:%d V_tot:%d H_pos:%d V_pos:%d\n",
+ pipe_ctx->tg->inst,
pipe_ctx->stream->public.timing.h_total,
pipe_ctx->stream->public.timing.v_total,
- h_pos, v_pos);
+ h_pos[i], v_pos[i]);
}
}
--
2.9.3
More information about the amd-gfx
mailing list