drm/amd/display: Add option to allow transition when odm is forced
authorSridevi Arvindekar <sarvinde@amd.com>
Thu, 27 Jun 2024 13:39:33 +0000 (09:39 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 23 Jul 2024 21:07:10 +0000 (17:07 -0400)
Added option to allow transition for forced odm.
Add the variation to the nightly run.

Reviewed-by: Wenjing Liu <wenjing.liu@amd.com>
Signed-off-by: Jerry Zuo <jerry.zuo@amd.com>
Signed-off-by: Sridevi Arvindekar <sarvinde@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/dc_stream.h

index 387b392..c35029c 100644 (file)
@@ -4338,7 +4338,8 @@ static void backup_and_set_minimal_pipe_split_policy(struct dc *dc,
        dc->debug.force_disable_subvp = true;
        for (i = 0; i < context->stream_count; i++) {
                policy->force_odm[i] = context->streams[i]->debug.force_odm_combine_segments;
-               context->streams[i]->debug.force_odm_combine_segments = 0;
+               if (context->streams[i]->debug.allow_transition_for_forced_odm)
+                       context->streams[i]->debug.force_odm_combine_segments = 0;
        }
 }
 
index 8ebd7e9..3d9ee4d 100644 (file)
@@ -159,6 +159,12 @@ struct test_pattern {
 
 struct dc_stream_debug_options {
        char force_odm_combine_segments;
+       /*
+        * When force_odm_combine_segments is non zero, allow dc to
+        * temporarily transition to ODM bypass when minimal transition state
+        * is required to prevent visual glitches showing on the screen
+        */
+       char allow_transition_for_forced_odm;
 };
 
 #define LUMINANCE_DATA_TABLE_SIZE 10