summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStylon Wang <stylon.wang@amd.com>2020-07-28 15:10:35 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-08-26 10:40:53 +0200
commit1f3cfa9338c34f4ea55acb740fe5b2e3acd3d2fb (patch)
treeb637c3c31e3e89b6bf4fd159e908e95fe5803a6e
parent6f3bff30f1cb9cc3b36ed08c2995946368838ab5 (diff)
downloadlinux-stable-1f3cfa9338c34f4ea55acb740fe5b2e3acd3d2fb.tar.gz
linux-stable-1f3cfa9338c34f4ea55acb740fe5b2e3acd3d2fb.tar.bz2
linux-stable-1f3cfa9338c34f4ea55acb740fe5b2e3acd3d2fb.zip
drm/amd/display: Fix EDID parsing after resume from suspend
commit b24bdc37d03a0478189e20a50286092840f414fa upstream. [Why] Resuming from suspend, CEA blocks from EDID are not parsed and no video modes can support YUV420. When this happens, output bpc cannot go over 8-bit with 4K modes on HDMI. [How] In amdgpu_dm_update_connector_after_detect(), drm_add_edid_modes() is called after drm_connector_update_edid_property() to fully parse EDID and update display info. Cc: stable@vger.kernel.org Signed-off-by: Stylon Wang <stylon.wang@amd.com> Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com> Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c1
1 files changed, 1 insertions, 0 deletions
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 6091194a3955..2c0eb7140ca0 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1434,6 +1434,7 @@ amdgpu_dm_update_connector_after_detect(struct amdgpu_dm_connector *aconnector)
drm_connector_update_edid_property(connector,
aconnector->edid);
+ drm_add_edid_modes(connector, aconnector->edid);
if (aconnector->dc_link->aux_mode)
drm_dp_cec_set_edid(&aconnector->dm_dp_aux.aux,