]> git.baikalelectronics.ru Git - kernel.git/commitdiff
drm/amd/display: remove number of DSC slices override in DML
authorWenjing Liu <wenjing.liu@amd.com>
Wed, 29 Jun 2022 18:55:43 +0000 (14:55 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 25 Jul 2022 13:31:01 +0000 (09:31 -0400)
[why]
Number of DSC slices is an input to DML with high dependency
on display specific capability. This isn't something DML can decide
on its own. DML has to use the original number of DSC slices input
to DML during validation without modification. Otherwise the
computed DSC delay will not reflect the current configuration
and therefore causes validation failures.

[how]
Remove DML override for number of DSC slices parameter.

Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: Alvin Lee <Alvin.Lee2@amd.com>
Acked-by: Alan Liu <HaoPing.Liu@amd.com>
Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c

index 349e36ae93338dc9f07686c114a0ee4b549453e6..9944f58f0db99146537649a69c228d9e904a806b 100644 (file)
@@ -1897,26 +1897,6 @@ void dml32_ModeSupportAndSystemConfigurationFull(struct display_mode_lib *mode_l
                                v->MaximumSwathWidthInLineBufferChroma);
        }
 
-       /*Number Of DSC Slices*/
-       for (k = 0; k < mode_lib->vba.NumberOfActiveSurfaces; ++k) {
-               if (mode_lib->vba.BlendingAndTiming[k] == k) {
-                       if (mode_lib->vba.PixelClockBackEnd[k] > 4800) {
-                               mode_lib->vba.NumberOfDSCSlices[k] = dml_ceil(mode_lib->vba.PixelClockBackEnd[k] / 600,
-                                               4);
-                       } else if (mode_lib->vba.PixelClockBackEnd[k] > 2400) {
-                               mode_lib->vba.NumberOfDSCSlices[k] = 8;
-                       } else if (mode_lib->vba.PixelClockBackEnd[k] > 1200) {
-                               mode_lib->vba.NumberOfDSCSlices[k] = 4;
-                       } else if (mode_lib->vba.PixelClockBackEnd[k] > 340) {
-                               mode_lib->vba.NumberOfDSCSlices[k] = 2;
-                       } else {
-                               mode_lib->vba.NumberOfDSCSlices[k] = 1;
-                       }
-               } else {
-                       mode_lib->vba.NumberOfDSCSlices[k] = 0;
-               }
-       }
-
        dml32_CalculateSwathAndDETConfiguration(
                        mode_lib->vba.DETSizeOverride,
                        mode_lib->vba.UsesMALLForPStateChange,