aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch
new file mode 100644
index 00000000..11a81d4a
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/1762-drm-amd-display-fix-is-odm-head-pipe-logic.patch
@@ -0,0 +1,43 @@
+From 0350ec80fd17131bda004f717624ef328508b9c1 Mon Sep 17 00:00:00 2001
+From: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
+Date: Tue, 26 Mar 2019 13:26:37 -0400
+Subject: [PATCH 1762/2940] drm/amd/display: fix is odm head pipe logic
+
+Simply return true/false, don't iterate up the tree.
+
+Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
+Reviewed-by: Nikola Cornij <Nikola.Cornij@amd.com>
+Acked-by: Leo Li <sunpeng.li@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 11 +++--------
+ 1 file changed, 3 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
+index dab3ca29d04e..79d17b9013b7 100644
+--- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
++++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
+@@ -1305,18 +1305,13 @@ struct pipe_ctx *dc_res_get_odm_bottom_pipe(struct pipe_ctx *pipe_ctx)
+ bool dc_res_is_odm_head_pipe(struct pipe_ctx *pipe_ctx)
+ {
+ struct pipe_ctx *top_pipe = pipe_ctx->top_pipe;
+- bool result = false;
+
++ if (!top_pipe)
++ return false;
+ if (top_pipe && top_pipe->stream_res.opp == pipe_ctx->stream_res.opp)
+ return false;
+
+- while (top_pipe) {
+- if (!top_pipe->top_pipe && top_pipe->stream_res.opp != pipe_ctx->stream_res.opp)
+- result = true;
+- top_pipe = top_pipe->top_pipe;
+- }
+-
+- return result;
++ return true;
+ }
+
+ bool dc_remove_plane_from_context(
+--
+2.17.1
+