aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch')
-rw-r--r--common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch b/common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch
new file mode 100644
index 00000000..41a276a2
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0519-drm-amd-dal-Assign-stream-encoder-in-MST-use-case.patch
@@ -0,0 +1,46 @@
+From c6f35a4f48a647c5365293ae636c1ad5a122fb3b Mon Sep 17 00:00:00 2001
+From: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com>
+Date: Tue, 24 Nov 2015 17:44:52 -0500
+Subject: [PATCH 0519/1110] drm/amd/dal: Assign stream encoder in MST use case.
+
+Signed-off-by: Harry Wentland <harry.wentland@amd.com>
+Acked-by: Harry Wentland <harry.wentland@amd.com>
+---
+ drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
+index d2594a9..fb3f5be 100644
+--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
++++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_resource.c
+@@ -784,17 +784,25 @@ static struct stream_encoder *find_first_free_match_stream_enc_for_link(
+ struct core_link *link)
+ {
+ uint8_t i;
++ int8_t j = -1;
+
+ for (i = 0; i < res_ctx->pool.stream_enc_count; i++) {
+ if (!res_ctx->is_stream_enc_acquired[i] &&
+- res_ctx->pool.stream_enc[i]) {
++ res_ctx->pool.stream_enc[i]) {
++ /* Store first available for MST second display
++ * in daisy chain use case */
++ j = i;
+ if (res_ctx->pool.stream_enc[i]->id ==
+ link->link_enc->preferred_engine)
+ return res_ctx->pool.stream_enc[i];
+ }
+ }
+
+- /* TODO: Handle MST*/
++ /* TODO: Handle MST properly
++ * Currently pick next available stream encoder if found*/
++ if (j >= 0 && link->public.sink[0]->sink_signal ==
++ SIGNAL_TYPE_DISPLAY_PORT_MST)
++ return res_ctx->pool.stream_enc[j];
+
+ return NULL;
+ }
+--
+2.7.4
+