aboutsummaryrefslogtreecommitdiffstats
path: root/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch')
-rw-r--r--meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch
new file mode 100644
index 00000000..da380a04
--- /dev/null
+++ b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0352-drm-amd-display-Copy-ctx-to-current_context-instead-.patch
@@ -0,0 +1,51 @@
+From fd88937d239c37789a411d7b9ac44170ee50efb4 Mon Sep 17 00:00:00 2001
+From: Harry Wentland <harry.wentland@amd.com>
+Date: Thu, 6 Apr 2017 18:57:05 -0400
+Subject: [PATCH 0352/4131] drm/amd/display: Copy ctx to current_context
+ instead of assign
+
+Signed-off-by: Harry Wentland <harry.wentland@amd.com>
+Acked-by: Harry Wentland <Harry.Wentland@amd.com>
+Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/core/dc.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
+index e8499e7..0d870e9 100644
+--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
++++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
+@@ -906,13 +906,13 @@ bool dc_post_update_surfaces_to_stream(struct dc *dc)
+ resource_validate_ctx_copy_construct(core_dc->current_context, context);
+
+ post_surface_trace(dc);
+-
+ for (i = 0; i < context->res_ctx.pool->pipe_count; i++)
+ if (context->res_ctx.pipe_ctx[i].stream == NULL) {
+ context->res_ctx.pipe_ctx[i].pipe_idx = i;
+ core_dc->hwss.power_down_front_end(
+ core_dc, &context->res_ctx.pipe_ctx[i]);
+ }
++
+ if (!core_dc->res_pool->funcs->validate_bandwidth(core_dc, context)) {
+ BREAK_TO_DEBUGGER();
+ return false;
+@@ -920,11 +920,10 @@ bool dc_post_update_surfaces_to_stream(struct dc *dc)
+
+ core_dc->hwss.set_bandwidth(core_dc, context, true);
+
+- resource_validate_ctx_destruct(core_dc->current_context);
+- if (core_dc->current_context)
+- dm_free(core_dc->current_context);
++ resource_validate_ctx_copy_construct(context, core_dc->current_context);
+
+- core_dc->current_context = context;
++ resource_validate_ctx_destruct(context);
++ dm_free(context);
+
+ return true;
+ }
+--
+2.7.4
+