From: Wenjing Liu <wenjing....@amd.com>

[how]
- Add minimial transition log with reason and base state.
- Do not log set dpms interfaces for virtual signal in stream.

Reviewed-by: Dillon Varone <dillon.var...@amd.com>
Acked-by: Stylon Wang <stylon.w...@amd.com>
Signed-off-by: Wenjing Liu <wenjing....@amd.com>
---
 drivers/gpu/drm/amd/display/dc/core/dc.c        |  7 +++++++
 drivers/gpu/drm/amd/display/dc/link/link_dpms.c | 10 ++++------
 2 files changed, 11 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 8e8362026825..a857de5ebe85 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -4069,6 +4069,13 @@ static bool commit_minimal_transition_state(struct dc 
*dc,
                return true;
        }
 
+       DC_LOG_DC("%s base = %s state, reason = %s\n", __func__,
+                       dc->current_state == transition_base_context ? 
"current" : "new",
+                       subvp_in_use ? "Subvp In Use" :
+                       odm_in_use ? "ODM in Use" :
+                       dc->debug.pipe_split_policy != MPC_SPLIT_AVOID ? "MPC 
in Use" :
+                       "Unknown");
+
        if (!dc->config.is_vmin_only_asic) {
                tmp_mpc_policy = dc->debug.pipe_split_policy;
                dc->debug.pipe_split_policy = MPC_SPLIT_AVOID;
diff --git a/drivers/gpu/drm/amd/display/dc/link/link_dpms.c 
b/drivers/gpu/drm/amd/display/dc/link/link_dpms.c
index cd9dd270b05f..d8327911c467 100644
--- a/drivers/gpu/drm/amd/display/dc/link/link_dpms.c
+++ b/drivers/gpu/drm/amd/display/dc/link/link_dpms.c
@@ -2269,6 +2269,8 @@ void link_set_dpms_off(struct pipe_ctx *pipe_ctx)
 
        if (dp_is_128b_132b_signal(pipe_ctx))
                vpg = pipe_ctx->stream_res.hpo_dp_stream_enc->vpg;
+       if (dc_is_virtual_signal(pipe_ctx->stream->signal))
+               return;
 
        DC_LOGGER_INIT(pipe_ctx->stream->ctx->logger);
 
@@ -2281,9 +2283,6 @@ void link_set_dpms_off(struct pipe_ctx *pipe_ctx)
                }
        }
 
-       if (dc_is_virtual_signal(pipe_ctx->stream->signal))
-               return;
-
        if (!pipe_ctx->stream->sink->edid_caps.panel_patch.skip_avmute) {
                if (dc_is_hdmi_signal(pipe_ctx->stream->signal))
                        set_avmute(pipe_ctx, true);
@@ -2382,6 +2381,8 @@ void link_set_dpms_on(
 
        if (dp_is_128b_132b_signal(pipe_ctx))
                vpg = pipe_ctx->stream_res.hpo_dp_stream_enc->vpg;
+       if (dc_is_virtual_signal(pipe_ctx->stream->signal))
+               return;
 
        DC_LOGGER_INIT(pipe_ctx->stream->ctx->logger);
 
@@ -2394,9 +2395,6 @@ void link_set_dpms_on(
                }
        }
 
-       if (dc_is_virtual_signal(pipe_ctx->stream->signal))
-               return;
-
        link_enc = link_enc_cfg_get_link_enc(link);
        ASSERT(link_enc);
 
-- 
2.42.0

Reply via email to