drm/amd/display: Ensure vmin and vmax adjust for DCE
authorRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Fri, 24 Feb 2023 18:35:43 +0000 (11:35 -0700)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 7 Mar 2023 19:22:41 +0000 (14:22 -0500)
[Why & How]
In the commit 32953485c558 ("drm/amd/display: Do not update DRR while
BW optimizations pending"), a modification was added to avoid adjusting
DRR if optimized bandwidth is set. This change was only intended for
DCN, but one part of the patch changed the code path for DCE devices and
caused regressions to the kms_vrr test. To address this problem, this
commit adds a modification in which dc_stream_adjust_vmin_vmax will be
fully executed in DCE devices.

Fixes: 32953485c558 ("drm/amd/display: Do not update DRR while BW optimizations pending")
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Rodrigo Siqueira <Rodrigo.Siqueira@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

index 0592359..4ac11f1 100644 (file)
@@ -404,8 +404,9 @@ bool dc_stream_adjust_vmin_vmax(struct dc *dc,
         * Don't adjust DRR while there's bandwidth optimizations pending to
         * avoid conflicting with firmware updates.
         */
-       if (dc->optimized_required || dc->wm_optimized_required)
-               return false;
+       if (dc->ctx->dce_version > DCE_VERSION_MAX)
+               if (dc->optimized_required || dc->wm_optimized_required)
+                       return false;
 
        stream->adjust.v_total_max = adjust->v_total_max;
        stream->adjust.v_total_mid = adjust->v_total_mid;