aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch65
1 files changed, 65 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch
new file mode 100644
index 00000000..72611d8e
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3464-amdgpu-dm-Don-t-use-DRM_ERROR-in-amdgpu_dm_atomic_ch.patch
@@ -0,0 +1,65 @@
+From dc880e077362ef7563826f9f30e865483df93415 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
+Date: Thu, 9 Nov 2017 18:38:09 +0100
+Subject: [PATCH 3464/4131] amdgpu/dm: Don't use DRM_ERROR in
+ amdgpu_dm_atomic_check
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The atomic_check hook is expected to fail in some cases, e.g. if the
+modeset operation requested by userspace cannot be performed, so it must
+not spam dmesg on failure.
+
+Fixes spurious
+
+ [drm:amdgpu_dm_atomic_check [amdgpu]] *ERROR* Atomic state validation failed with error :-35 !
+
+error messages on DPMS off with CONFIG_DEBUG_WW_MUTEX_SLOWPATH enabled.
+
+While we're at it, fix up the existing DRM_DEBUG_DRIVER strings.
+
+Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Harry Wentland <harry.wentland@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Kalyan Alle <kalyan.alle@amd.com>
+---
+ drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 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 6109961..485f95b 100644
+--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+@@ -4902,10 +4902,8 @@ static int amdgpu_dm_atomic_check(struct drm_device *dev,
+ bool lock_and_validation_needed = false;
+
+ ret = drm_atomic_helper_check_modeset(dev, state);
+- if (ret) {
+- DRM_ERROR("Atomic state validation failed with error :%d !\n", ret);
+- return ret;
+- }
++ if (ret)
++ goto fail;
+
+ for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
+ if (!drm_atomic_crtc_needs_modeset(new_crtc_state) &&
+@@ -5007,11 +5005,11 @@ static int amdgpu_dm_atomic_check(struct drm_device *dev,
+
+ fail:
+ if (ret == -EDEADLK)
+- DRM_DEBUG_DRIVER("Atomic check stopped due to to deadlock.\n");
++ DRM_DEBUG_DRIVER("Atomic check stopped to avoid deadlock.\n");
+ else if (ret == -EINTR || ret == -EAGAIN || ret == -ERESTARTSYS)
+- DRM_DEBUG_DRIVER("Atomic check stopped due to to signal.\n");
++ DRM_DEBUG_DRIVER("Atomic check stopped due to signal.\n");
+ else
+- DRM_ERROR("Atomic check failed with err: %d \n", ret);
++ DRM_DEBUG_DRIVER("Atomic check failed with err: %d \n", ret);
+
+ return ret;
+ }
+--
+2.7.4
+