drm/amd/display: Fix refresh rate issue on Club 3D
authorRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Thu, 16 Jun 2022 20:48:22 +0000 (16:48 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 5 Jul 2022 20:14:26 +0000 (16:14 -0400)
Recently we introduced a patch for fixing an MST issue, but it caused a
regression on Club 3D since we could not set a refresh rate higher than
60Hz. This commit fixes this issue by adding a proper check after
validating the stream.

Fixes: f04d275d94e164 ("drm/amd/display: add mst port output bw check")
Reviewed-by: Hersen Wu <hersenxs.wu@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@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/amdgpu_dm/amdgpu_dm.c

index 7b698dc91ada4bd720d9bab1b67325c6e6bfa636..595d065869a164b5caf199c428c60002df712ccd 100644 (file)
@@ -7214,12 +7214,10 @@ create_validate_stream_for_sink(struct amdgpu_dm_connector *aconnector,
                        break;
                }
 
-               if (stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST)
+               dc_result = dc_validate_stream(adev->dm.dc, stream);
+               if (dc_result == DC_OK && stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST)
                        dc_result = dm_dp_mst_is_port_support_mode(aconnector, stream);
 
-               if (dc_result == DC_OK)
-                       dc_result = dc_validate_stream(adev->dm.dc, stream);
-
                if (dc_result != DC_OK) {
                        DRM_DEBUG_KMS("Mode %dx%d (clk %d) failed DC validation with error %d (%s)\n",
                                      drm_mode->hdisplay,