From: Mikita Lipski Date: Mon, 28 May 2018 14:08:30 +0000 (-0400) Subject: drm/amd/display: Do not skip FBC init in failsafe mode X-Git-Tag: v4.19-rc1~138^2~37^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=85ee15d6a3d3c55e3e653426cc32e138ee515585;p=thirdparty%2Fkernel%2Flinux.git drm/amd/display: Do not skip FBC init in failsafe mode Initially FBC would be initialized if display's edid was correct and all the modes acquired from it, but n case when edid is corrupted or non-existant we must still initialize FBC. Signed-off-by: Mikita Lipski Reviewed-by: Tony Cheng Acked-by: Harry Wentland Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index b1b8d1914b315..a1c912bc959af 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -3425,12 +3425,12 @@ static int amdgpu_dm_connector_get_modes(struct drm_connector *connector) 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); - + if (!edid || !drm_edid_is_valid(edid)) { + drm_add_modes_noedid(connector, 640, 480); + } else { + amdgpu_dm_connector_ddc_get_modes(connector, edid); + amdgpu_dm_connector_add_common_modes(encoder, connector); + } amdgpu_dm_fbc_init(connector); return amdgpu_dm_connector->num_modes;