diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0557-drm-amd-dal-Pass-stream-instead-of-sink-to-MST-helpe.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0557-drm-amd-dal-Pass-stream-instead-of-sink-to-MST-helpe.patch | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0557-drm-amd-dal-Pass-stream-instead-of-sink-to-MST-helpe.patch b/common/recipes-kernel/linux/files/0557-drm-amd-dal-Pass-stream-instead-of-sink-to-MST-helpe.patch new file mode 100644 index 00000000..40b81819 --- /dev/null +++ b/common/recipes-kernel/linux/files/0557-drm-amd-dal-Pass-stream-instead-of-sink-to-MST-helpe.patch @@ -0,0 +1,181 @@ +From 3d87533c0a0f6f71ad48298c6076e0df2261cfcb Mon Sep 17 00:00:00 2001 +From: Harry Wentland <harry.wentland@amd.com> +Date: Tue, 1 Dec 2015 16:00:57 -0500 +Subject: [PATCH 0557/1110] drm/amd/dal: Pass stream instead of sink to MST + helpers + +Signed-off-by: Harry Wentland <harry.wentland@amd.com> +Acked-by: Harry Wentland <harry.wentland@amd.com> +--- + drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dc_helpers.c | 18 +++++++++--------- + drivers/gpu/drm/amd/dal/dc/dc_helpers.h | 6 +++--- + .../gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c | 12 ++++++------ + 3 files changed, 18 insertions(+), 18 deletions(-) + +diff --git a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dc_helpers.c b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dc_helpers.c +index 6b70a41..053add1 100644 +--- a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dc_helpers.c ++++ b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dc_helpers.c +@@ -165,7 +165,7 @@ static struct amdgpu_connector *get_connector_for_link( + */ + bool dc_helpers_dp_mst_write_payload_allocation_table( + struct dc_context *ctx, +- const struct dc_sink *sink, ++ const struct dc_stream *stream, + struct dp_mst_stream_allocation_table *table, + bool enable) + { +@@ -186,7 +186,7 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + uint8_t vcid = 0; + bool find_stream_for_sink; + +- aconnector = get_connector_for_sink(dev, sink); ++ aconnector = get_connector_for_sink(dev, stream->sink); + crtc = aconnector->base.state->crtc; + + if (!crtc) +@@ -265,7 +265,7 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + connector, + &dev->mode_config.connector_list, + head) { +- const struct dc_sink *dc_sink_connector; ++ const struct dc_sink *dc_sink; + struct dc_target *dc_target; + uint8_t j; + +@@ -283,7 +283,7 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + + /* find connector with same vcid as payload */ + +- dc_sink_connector = aconnector->dc_sink; ++ dc_sink = aconnector->dc_sink; + + /* + * find stream to drive this sink +@@ -295,7 +295,7 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + + for (j = 0; j < dc_target->stream_count; j++) { + if (dc_target->streams[j]->sink == +- dc_sink_connector) ++ dc_sink) + break; + } + +@@ -335,7 +335,7 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + */ + bool dc_helpers_dp_mst_poll_for_allocation_change_trigger( + struct dc_context *ctx, +- const struct dc_sink *sink) ++ const struct dc_stream *stream) + { + struct amdgpu_device *adev = ctx->driver_context; + struct drm_device *dev = adev->ddev; +@@ -343,7 +343,7 @@ bool dc_helpers_dp_mst_poll_for_allocation_change_trigger( + struct drm_dp_mst_topology_mgr *mst_mgr; + int ret; + +- aconnector = get_connector_for_sink(dev, sink); ++ aconnector = get_connector_for_sink(dev, stream->sink); + + if (!aconnector->mst_port) + return false; +@@ -360,7 +360,7 @@ bool dc_helpers_dp_mst_poll_for_allocation_change_trigger( + + bool dc_helpers_dp_mst_send_payload_allocation( + struct dc_context *ctx, +- const struct dc_sink *sink, ++ const struct dc_stream *stream, + bool enable) + { + struct amdgpu_device *adev = ctx->driver_context; +@@ -370,7 +370,7 @@ bool dc_helpers_dp_mst_send_payload_allocation( + struct drm_dp_mst_port *mst_port; + int ret; + +- aconnector = get_connector_for_sink(dev, sink); ++ aconnector = get_connector_for_sink(dev, stream->sink); + + mst_port = aconnector->port; + +diff --git a/drivers/gpu/drm/amd/dal/dc/dc_helpers.h b/drivers/gpu/drm/amd/dal/dc/dc_helpers.h +index 874c839..c0fbb65 100644 +--- a/drivers/gpu/drm/amd/dal/dc/dc_helpers.h ++++ b/drivers/gpu/drm/amd/dal/dc/dc_helpers.h +@@ -43,7 +43,7 @@ enum dc_edid_status dc_helpers_parse_edid_caps( + */ + bool dc_helpers_dp_mst_write_payload_allocation_table( + struct dc_context *ctx, +- const struct dc_sink *sink, ++ const struct dc_stream *stream, + struct dp_mst_stream_allocation_table *table, + bool enable); + +@@ -52,13 +52,13 @@ bool dc_helpers_dp_mst_write_payload_allocation_table( + */ + bool dc_helpers_dp_mst_poll_for_allocation_change_trigger( + struct dc_context *ctx, +- const struct dc_sink *sink); ++ const struct dc_stream *stream); + /* + * Sends ALLOCATE_PAYLOAD message. + */ + bool dc_helpers_dp_mst_send_payload_allocation( + struct dc_context *ctx, +- const struct dc_sink *sink, ++ const struct dc_stream *stream, + bool enable); + + void dc_helpers_dp_mst_handle_mst_hpd_rx_irq( +diff --git a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c +index 046ab0c..0be98a8 100644 +--- a/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c ++++ b/drivers/gpu/drm/amd/dal/dc/dce110/dce110_hw_sequencer.c +@@ -791,7 +791,7 @@ static enum dc_status allocate_mst_payload(struct core_stream *stream) + /* get calculate VC payload for stream: stream_alloc */ + dc_helpers_dp_mst_write_payload_allocation_table( + stream->ctx, +- &stream->sink->public, ++ &stream->public, + &table, + true); + +@@ -803,11 +803,11 @@ static enum dc_status allocate_mst_payload(struct core_stream *stream) + /* send down message */ + dc_helpers_dp_mst_poll_for_allocation_change_trigger( + stream->ctx, +- &stream->sink->public); ++ &stream->public); + + dc_helpers_dp_mst_send_payload_allocation( + stream->ctx, +- &stream->sink->public, ++ &stream->public, + true); + + /* slot X.Y for only current stream */ +@@ -858,7 +858,7 @@ static enum dc_status deallocate_mst_payload(struct core_stream *stream) + /* TODO: which component is responsible for remove payload table? */ + dc_helpers_dp_mst_write_payload_allocation_table( + stream->ctx, +- &stream->sink->public, ++ &stream->public, + &table, + false); + +@@ -868,11 +868,11 @@ static enum dc_status deallocate_mst_payload(struct core_stream *stream) + + dc_helpers_dp_mst_poll_for_allocation_change_trigger( + stream->ctx, +- &stream->sink->public); ++ &stream->public); + + dc_helpers_dp_mst_send_payload_allocation( + stream->ctx, +- &stream->sink->public, ++ &stream->public, + false); + + return DC_OK; +-- +2.7.4 + |