drm/amd/display: minior logging improvements
authorWenjing Liu <wenjing.liu@amd.com>
Thu, 24 Aug 2023 19:39:13 +0000 (15:39 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 11 Sep 2023 21:18:44 +0000 (17:18 -0400)
[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.varone@amd.com>
Acked-by: Stylon Wang <stylon.wang@amd.com>
Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@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/link/link_dpms.c

index a71ce673612e182b32fc82e2a86f7d82cd773801..f91d0f6b0d7daa7b059338f31ffeb2204116f9ad 100644 (file)
@@ -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;
index cd9dd270b05f09d403a2132cc6a7b814fe487e9c..d8327911c46757e53e1ea3e9dbd7c0b2efc46fe5 100644 (file)
@@ -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);