]> git.itanic.dy.fi Git - linux-stable/commitdiff
drm/amd/display: update gamut remap if plane has changed
authorHugo Hu <hugo.hu@amd.com>
Thu, 1 Sep 2022 02:08:35 +0000 (10:08 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 21 Sep 2022 21:23:06 +0000 (17:23 -0400)
[Why]
The desktop plane and full-screen game plane may have different
gamut remap coefficients, if switching between desktop and
full-screen game without updating the gamut remap will cause
incorrect color.

[How]
Update gamut remap if planes change.

Reviewed-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Acked-by: Wayne Lin <wayne.lin@amd.com>
Signed-off-by: Hugo Hu <hugo.hu@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/dcn20/dcn20_hwseq.c

index 884fa060f37514970c87370a3acda731c0f04f39..598ce872a8d7b6c3ee551197ef150d93920a8ad9 100644 (file)
@@ -1565,6 +1565,7 @@ static void dcn20_update_dchubp_dpp(
        /* Any updates are handled in dc interface, just need
         * to apply existing for plane enable / opp change */
        if (pipe_ctx->update_flags.bits.enable || pipe_ctx->update_flags.bits.opp_changed
+                       || pipe_ctx->update_flags.bits.plane_changed
                        || pipe_ctx->stream->update_flags.bits.gamut_remap
                        || pipe_ctx->stream->update_flags.bits.out_csc) {
                /* dpp/cm gamut remap*/