aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch')
-rw-r--r--common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch b/common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch
new file mode 100644
index 00000000..fca39794
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0648-amdgpu-fix-fbcon-S3-resume-with-dal_enabled.patch
@@ -0,0 +1,48 @@
+From dd67446826dc75dc276782294ae552c1d0fc102a Mon Sep 17 00:00:00 2001
+From: Eric Yang <eric.yang2@amd.com>
+Date: Tue, 5 Jan 2016 11:46:09 -0500
+Subject: [PATCH 0648/1110] amdgpu: fix fbcon S3 resume with dal_enabled
+
+DAL does not use drm_helper_resume_force_mode and
+drm_helper_connector_dpms for resuming from S3
+
+Signed-off-by: Eric Yang <eric.yang2@amd.com>
+Reviewed-By: Tom St Denis <tom.stdenis@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Harry Wentland <harry.wentland@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 13 ++++++-------
+ 1 file changed, 6 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+index fcfdf2d..7e24cdb 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+@@ -1835,18 +1835,17 @@ int amdgpu_resume_kms(struct drm_device *dev, bool resume, bool fbcon)
+
+ /* blat the mode back in */
+ if (fbcon) {
+- drm_helper_resume_force_mode(dev);
+ if (!amdgpu_has_dal_support(adev)) {
+ /* pre DCE11 */
+ drm_helper_resume_force_mode(dev);
+- }
+
+- /* turn on display hw */
+- drm_modeset_lock_all(dev);
+- list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
+- drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON);
++ /* turn on display hw */
++ drm_modeset_lock_all(dev);
++ list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
++ drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON);
++ }
++ drm_modeset_unlock_all(dev);
+ }
+- drm_modeset_unlock_all(dev);
+ }
+
+ drm_kms_helper_poll_enable(dev);
+--
+2.7.4
+