]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amd/display: remove output_tf_change flag
authorMelissa Wen <mwen@igalia.com>
Mon, 1 Sep 2025 21:51:05 +0000 (18:51 -0300)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 23 Sep 2025 17:54:50 +0000 (13:54 -0400)
Remove this flag as the driver stopped managing it individually since
commit a4056c2a6344 ("drm/amd/display: use HW hdr mult for brightness
boost"). After some back and forth it was reintroduced as a condition to
`set_output_transfer_func()` in [1]. Without direct management, this
flag only changes value when all surface update flags are set true on
UPDATE_TYPE_FULL with no output TF status meaning.

Fixes: bb622e0c0044 ("drm/amd/display: program output tf when required") [1]
Signed-off-by: Melissa Wen <mwen@igalia.com>
Reviewed-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 752e6f283ec59ae007aa15a93d5a4b2eefa8cec9)

drivers/gpu/drm/amd/display/dc/dc.h
drivers/gpu/drm/amd/display/dc/hwss/dcn20/dcn20_hwseq.c
drivers/gpu/drm/amd/display/dc/hwss/dcn401/dcn401_hwseq.c

index f24e1da68269e49cf01d42a0e8a238e2050839f9..8c230cf8939b53007e3872f1e7e3aafd662b0649 100644 (file)
@@ -1348,7 +1348,6 @@ union surface_update_flags {
                uint32_t in_transfer_func_change:1;
                uint32_t input_csc_change:1;
                uint32_t coeff_reduction_change:1;
-               uint32_t output_tf_change:1;
                uint32_t pixel_format_change:1;
                uint32_t plane_size_change:1;
                uint32_t gamut_remap_change:1;
index b7c2d3095b25c53f1f7d08a26c31d4451ba35310..5e57bd1a08e73d85066db175e6ca1e5b193c41fe 100644 (file)
@@ -1982,10 +1982,8 @@ static void dcn20_program_pipe(
         * updating on slave planes
         */
        if (pipe_ctx->update_flags.bits.enable ||
-               pipe_ctx->update_flags.bits.plane_changed ||
-               pipe_ctx->stream->update_flags.bits.out_tf ||
-               (pipe_ctx->plane_state &&
-                       pipe_ctx->plane_state->update_flags.bits.output_tf_change))
+           pipe_ctx->update_flags.bits.plane_changed ||
+           pipe_ctx->stream->update_flags.bits.out_tf)
                hws->funcs.set_output_transfer_func(dc, pipe_ctx, pipe_ctx->stream);
 
        /* If the pipe has been enabled or has a different opp, we
index cc9f40d97af2fb7a454b3a764b27993d30a41297..61167c19359d5775f1f7ef53e6fa8c942a3d14f1 100644 (file)
@@ -2019,10 +2019,8 @@ void dcn401_program_pipe(
         * updating on slave planes
         */
        if (pipe_ctx->update_flags.bits.enable ||
-               pipe_ctx->update_flags.bits.plane_changed ||
-               pipe_ctx->stream->update_flags.bits.out_tf ||
-               (pipe_ctx->plane_state &&
-                       pipe_ctx->plane_state->update_flags.bits.output_tf_change))
+           pipe_ctx->update_flags.bits.plane_changed ||
+           pipe_ctx->stream->update_flags.bits.out_tf)
                hws->funcs.set_output_transfer_func(dc, pipe_ctx, pipe_ctx->stream);
 
        /* If the pipe has been enabled or has a different opp, we