diff options
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.patch | 46 |
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 + |