From: Mikita Lipski <mikita.lipski@amd.com>
Date: Tue, 22 May 2018 15:55:43 -0400
Subject: drm/amd/display: Drop to fail-safe mode if edid is bad
Git-commit: 3b070c60ea511a0d103b39de3122d3bad0de45ab
Patch-mainline: v4.19-rc1
References: FATE#326289 FATE#326079 FATE#326049 FATE#322398 FATE#326166
Provide the connector with a single fail-safe mode of 640x480 for CTS
tests instead of providing a list of possible base modes.
Signed-off-by: Mikita Lipski <mikita.lipski@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++++
1 file changed, 4 insertions(+)
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -3469,6 +3469,10 @@ static int amdgpu_dm_connector_get_modes
struct edid *edid = amdgpu_dm_connector->edid;
encoder = helper->best_encoder(connector);
+
+ if (!edid || !drm_edid_is_valid(edid))
+ return drm_add_modes_noedid(connector, 640, 480);
+
amdgpu_dm_connector_ddc_get_modes(connector, edid);
amdgpu_dm_connector_add_common_modes(encoder, connector);