mirror of
https://github.com/torvalds/linux.git
synced 2024-12-03 17:41:22 +00:00
drm/amd/display: update dml var
Update *DynamicMetadata variables for providing more flexibility. Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com> Reviewed-by: Harry Wentland <Harry.Wentland@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
4c8f126e0c
commit
eaa483642f
@ -2567,7 +2567,7 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman
|
||||
&v->VRatioPrefetchC[k],
|
||||
&v->RequiredPrefetchPixDataBWLuma[k],
|
||||
&v->RequiredPrefetchPixDataBWChroma[k],
|
||||
&v->NotEnoughTimeForDynamicMetadata,
|
||||
&v->NotEnoughTimeForDynamicMetadata[k],
|
||||
&v->Tno_bw[k],
|
||||
&v->prefetch_vmrow_bw[k],
|
||||
&v->Tdmdl_vm[k],
|
||||
@ -2686,7 +2686,7 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman
|
||||
v->FractionOfUrgentBandwidth = MaxTotalRDBandwidthNoUrgentBurst / v->ReturnBW;
|
||||
|
||||
|
||||
if (MaxTotalRDBandwidth <= v->ReturnBW && v->NotEnoughUrgentLatencyHiding == 0 && v->NotEnoughUrgentLatencyHidingPre == 0 && v->NotEnoughTimeForDynamicMetadata == 0 && !VRatioPrefetchMoreThan4
|
||||
if (MaxTotalRDBandwidth <= v->ReturnBW && v->NotEnoughUrgentLatencyHiding == 0 && v->NotEnoughUrgentLatencyHidingPre == 0 && !VRatioPrefetchMoreThan4
|
||||
&& !DestinationLineTimesForPrefetchLessThan2)
|
||||
v->PrefetchModeSupported = true;
|
||||
else {
|
||||
@ -2695,8 +2695,6 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman
|
||||
dml_print("DML: MaxTotalRDBandwidth:%f AvailReturnBandwidth:%f\n", MaxTotalRDBandwidth, v->ReturnBW);
|
||||
dml_print("DML: VRatioPrefetch %s more than 4\n", (VRatioPrefetchMoreThan4) ? "is" : "is not");
|
||||
dml_print("DML: DestinationLines for Prefetch %s less than 2\n", (DestinationLineTimesForPrefetchLessThan2) ? "is" : "is not");
|
||||
dml_print("DML: Not enough lines for dynamic meta is %s\n", (v->NotEnoughTimeForDynamicMetadata) ? "true" : "false");
|
||||
|
||||
}
|
||||
|
||||
if (v->PrefetchModeSupported == true && v->ImmediateFlipSupport == true) {
|
||||
@ -2786,7 +2784,7 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman
|
||||
}
|
||||
|
||||
for (k = 0; k < v->NumberOfActivePlanes; ++k) {
|
||||
if (v->ErrorResult[k]) {
|
||||
if (v->ErrorResult[k] || v->NotEnoughTimeForDynamicMetadata[k]) {
|
||||
v->PrefetchModeSupported = false;
|
||||
dml_print("DML: CalculatePrefetchSchedule ***failed***. Prefetch schedule violation. Results are NOT valid\n");
|
||||
}
|
||||
|
@ -802,7 +802,7 @@ struct vba_vars_st {
|
||||
unsigned int DCCCMaxCompressedBlock[DC__NUM_DPP__MAX];
|
||||
unsigned int DCCCIndependent64ByteBlock[DC__NUM_DPP__MAX];
|
||||
double VStartupMargin;
|
||||
bool NotEnoughTimeForDynamicMetadata;
|
||||
bool NotEnoughTimeForDynamicMetadata[DC__NUM_DPP__MAX];
|
||||
|
||||
/* Missing from VBA */
|
||||
unsigned int MaximumMaxVStartupLines;
|
||||
|
Loading…
Reference in New Issue
Block a user