Commit e6c64182 authored by Wenjing Liu's avatar Wenjing Liu Committed by Alex Deucher
Browse files

drm/amd/display: remove number of DSC slices override in DML



[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: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: default avatarAlvin Lee <Alvin.Lee2@amd.com>
Acked-by: default avatarAlan Liu <HaoPing.Liu@amd.com>
Signed-off-by: default avatarWenjing Liu <wenjing.liu@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 473683a0
Loading
Loading
Loading
Loading
+0 −20
Original line number Diff line number Diff line
@@ -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,