]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amd/display: Move analog check to dce110_hwseq
authorTimur Kristóf <timur.kristof@gmail.com>
Thu, 13 Nov 2025 16:33:48 +0000 (17:33 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 18 Nov 2025 15:53:19 +0000 (10:53 -0500)
Instead of checking that the signal is analog before calling the
HWSS disable_audio_stream() function to disable audio, move
the check inside the HWSS function.

Suggested-by: Ray Wu <Ray.Wu@amd.com>
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Link: https://lore.kernel.org/r/20251113163348.137315-5-timur.kristof@gmail.com
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/hwss/dce110/dce110_hwseq.c
drivers/gpu/drm/amd/display/dc/link/link_dpms.c

index 3005115c85051d4aab1d8a840ca9cf1d3b337c02..94e66d96c403a3828868d7de0e75b5fee00b9e35 100644 (file)
@@ -1139,6 +1139,9 @@ void dce110_disable_audio_stream(struct pipe_ctx *pipe_ctx)
        if (!pipe_ctx || !pipe_ctx->stream)
                return;
 
+       if (dc_is_rgb_signal(pipe_ctx->stream->signal))
+               return;
+
        dc = pipe_ctx->stream->ctx->dc;
        clk_mgr = dc->clk_mgr;
        link_hwss = get_link_hwss(pipe_ctx->stream->link, &pipe_ctx->link_res);
@@ -1193,8 +1196,7 @@ void dce110_disable_stream(struct pipe_ctx *pipe_ctx)
                pipe_ctx->stream_res.stream_enc->funcs->stop_dp_info_packets(
                        pipe_ctx->stream_res.stream_enc);
 
-       if (!dc_is_rgb_signal(pipe_ctx->stream->signal))
-               dc->hwss.disable_audio_stream(pipe_ctx);
+       dc->hwss.disable_audio_stream(pipe_ctx);
 
        link_hwss->reset_stream_encoder(pipe_ctx);
 
index 2a70dcdd2e477231620b43813534e36dce4d5945..475f71bb48ffe08834dd451ccc711e9889279bae 100644 (file)
@@ -2378,8 +2378,7 @@ void link_set_dpms_off(struct pipe_ctx *pipe_ctx)
                        set_avmute(pipe_ctx, true);
        }
 
-       if (!dc_is_rgb_signal(pipe_ctx->stream->signal))
-               dc->hwss.disable_audio_stream(pipe_ctx);
+       dc->hwss.disable_audio_stream(pipe_ctx);
 
        update_psp_stream_config(pipe_ctx, true);
        dc->hwss.blank_stream(pipe_ctx);