diff options
Diffstat (limited to 'meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0710-drm-amd-display-Rename-dc_stream-to-dc_stream_state.patch')
-rw-r--r-- | meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0710-drm-amd-display-Rename-dc_stream-to-dc_stream_state.patch | 1986 |
1 files changed, 1986 insertions, 0 deletions
diff --git a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0710-drm-amd-display-Rename-dc_stream-to-dc_stream_state.patch b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0710-drm-amd-display-Rename-dc_stream-to-dc_stream_state.patch new file mode 100644 index 00000000..aac56af3 --- /dev/null +++ b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0710-drm-amd-display-Rename-dc_stream-to-dc_stream_state.patch @@ -0,0 +1,1986 @@ +From 534501cbc81607b9523cb34942efbfe122c7234f Mon Sep 17 00:00:00 2001 +From: Harry Wentland <harry.wentland@amd.com> +Date: Thu, 27 Jul 2017 09:33:33 -0400 +Subject: [PATCH 0710/4131] drm/amd/display: Rename dc_stream to + dc_stream_state + +find -name Makefile -o -name Kconfig -o -name "*.c" -o -name "*.h" \ +-o -name "*.cpp" -o -name "*.hpp" | \ +xargs sed -i 's/struct dc_stream/struct dc_stream_state/g' + +find -name Makefile -o -name Kconfig -o -name "*.c" -o -name "*.h" \ +-o -name "*.cpp" -o -name "*.hpp" | \ +xargs sed -i 's/struct dc_stream_state_update/struct dc_stream_update/g' + +find -name Makefile -o -name Kconfig -o -name "*.c" -o -name "*.h" \ +-o -name "*.cpp" -o -name "*.hpp" | \ +xargs sed -i 's/struct dc_stream_state_status/struct dc_stream_status/g' + +Plus some manual changes + +Signed-off-by: Harry Wentland <harry.wentland@amd.com> +Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> +Acked-by: Harry Wentland <Harry.Wentland@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 42 ++++++------- + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 2 +- + .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 6 +- + drivers/gpu/drm/amd/display/dc/core/dc.c | 38 ++++++------ + drivers/gpu/drm/amd/display/dc/core/dc_link.c | 18 +++--- + drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 2 +- + drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 68 +++++++++++----------- + drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 26 ++++----- + drivers/gpu/drm/amd/display/dc/dc.h | 58 +++++++++--------- + drivers/gpu/drm/amd/display/dc/dc_types.h | 2 +- + .../gpu/drm/amd/display/dc/dce/dce_link_encoder.c | 2 +- + .../gpu/drm/amd/display/dc/dce/dce_link_encoder.h | 2 +- + .../drm/amd/display/dc/dce100/dce100_resource.c | 4 +- + .../amd/display/dc/dce110/dce110_hw_sequencer.c | 16 ++--- + .../drm/amd/display/dc/dce110/dce110_resource.c | 8 +-- + .../drm/amd/display/dc/dce112/dce112_resource.c | 8 +-- + .../drm/amd/display/dc/dce112/dce112_resource.h | 2 +- + .../gpu/drm/amd/display/dc/dce80/dce80_resource.c | 4 +- + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 8 +-- + .../gpu/drm/amd/display/dc/dcn10/dcn10_resource.c | 10 ++-- + drivers/gpu/drm/amd/display/dc/dm_helpers.h | 6 +- + drivers/gpu/drm/amd/display/dc/inc/core_types.h | 11 ++-- + drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h | 4 +- + .../gpu/drm/amd/display/dc/inc/hw/link_encoder.h | 2 +- + drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 2 +- + drivers/gpu/drm/amd/display/dc/inc/resource.h | 13 ++--- + .../amd/display/dc/virtual/virtual_link_encoder.c | 2 +- + .../drm/amd/display/modules/freesync/freesync.c | 50 ++++++++-------- + .../gpu/drm/amd/display/modules/inc/mod_freesync.h | 28 ++++----- + 29 files changed, 222 insertions(+), 222 deletions(-) + +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +index f46afd7..7f70fe9 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +@@ -116,7 +116,8 @@ static u32 dm_vblank_get_counter(struct amdgpu_device *adev, int crtc) + + + if (acrtc_state->stream == NULL) { +- DRM_ERROR("dc_stream is NULL for crtc '%d'!\n", crtc); ++ DRM_ERROR("dc_stream_state is NULL for crtc '%d'!\n", ++ crtc); + return 0; + } + +@@ -137,7 +138,8 @@ static int dm_crtc_get_scanoutpos(struct amdgpu_device *adev, int crtc, + acrtc->base.state); + + if (acrtc_state->stream == NULL) { +- DRM_ERROR("dc_stream is NULL for crtc '%d'!\n", crtc); ++ DRM_ERROR("dc_stream_state is NULL for crtc '%d'!\n", ++ crtc); + return 0; + } + +@@ -1446,7 +1448,7 @@ static int amdgpu_notify_freesync(struct drm_device *dev, void *data, + num_streams = dc_get_current_stream_count(adev->dm.dc); + + for (i = 0; i < num_streams; i++) { +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + stream = dc_get_stream_at_index(adev->dm.dc, i); + + mod_freesync_update_state(adev->dm.freesync_module, +@@ -1614,8 +1616,8 @@ struct dm_connector_state { + container_of((x), struct dm_connector_state, base) + + static bool modeset_required(struct drm_crtc_state *crtc_state, +- struct dc_stream *new_stream, +- struct dc_stream *old_stream) ++ struct dc_stream_state *new_stream, ++ struct dc_stream_state *old_stream) + { + if (dc_is_stream_unchanged(new_stream, old_stream)) { + crtc_state->mode_changed = false; +@@ -2146,7 +2148,7 @@ struct amdgpu_connector *aconnector_from_drm_crtc_id( + static void update_stream_scaling_settings( + const struct drm_display_mode *mode, + const struct dm_connector_state *dm_state, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + enum amdgpu_rmx_type rmx_type; + +@@ -2290,7 +2292,7 @@ static enum dc_color_space get_output_color_space( + /*****************************************************************************/ + + static void fill_stream_properties_from_drm_display_mode( +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + const struct drm_display_mode *mode_in, + const struct drm_connector *connector) + { +@@ -2431,14 +2433,14 @@ static void decide_crtc_timing_for_drm_display_mode( + } + } + +-static struct dc_stream *create_stream_for_sink( ++static struct dc_stream_state *create_stream_for_sink( + struct amdgpu_connector *aconnector, + const struct drm_display_mode *drm_mode, + const struct dm_connector_state *dm_state) + { + struct drm_display_mode *preferred_mode = NULL; + const struct drm_connector *drm_connector; +- struct dc_stream *stream = NULL; ++ struct dc_stream_state *stream = NULL; + struct drm_display_mode mode = *drm_mode; + bool native_mode_found = false; + +@@ -2991,7 +2993,7 @@ int amdgpu_dm_connector_mode_valid( + struct dc_sink *dc_sink; + struct amdgpu_device *adev = connector->dev->dev_private; + /* TODO: Unhardcode stream count */ +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + struct amdgpu_connector *aconnector = to_amdgpu_connector(connector); + + if ((mode->flags & DRM_MODE_FLAG_INTERLACE) || +@@ -3269,7 +3271,7 @@ int dm_create_validation_set_for_connector(struct drm_connector *connector, + struct dc_sink *dc_sink = + to_amdgpu_connector(connector)->dc_sink; + /* TODO: Unhardcode stream count */ +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + + if ((mode->flags & DRM_MODE_FLAG_INTERLACE) || + (mode->flags & DRM_MODE_FLAG_DBLSCAN)) +@@ -3928,7 +3930,7 @@ static bool is_scaling_state_different( + static void remove_stream( + struct amdgpu_device *adev, + struct amdgpu_crtc *acrtc, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + /* this is the update mode case */ + if (adev->dm.freesync_module) +@@ -4083,7 +4085,7 @@ static void amdgpu_dm_commit_surfaces(struct drm_atomic_state *state, + uint32_t i; + struct drm_plane *plane; + struct drm_plane_state *old_plane_state; +- struct dc_stream *dc_stream_attach; ++ struct dc_stream_state *dc_stream_attach; + struct dc_plane_state *dc_surfaces_constructed[MAX_SURFACES]; + struct amdgpu_crtc *acrtc_attach = to_amdgpu_crtc(pcrtc); + struct dm_crtc_state *acrtc_state = to_dm_crtc_state(pcrtc->state); +@@ -4219,7 +4221,7 @@ void amdgpu_dm_atomic_commit_tail( + struct drm_crtc *crtc, *pcrtc; + struct drm_crtc_state *old_crtc_state; + struct amdgpu_crtc *new_crtcs[MAX_STREAMS]; +- struct dc_stream *new_stream = NULL; ++ struct dc_stream_state *new_stream = NULL; + unsigned long flags; + bool wait_for_vblank = true; + struct drm_connector *connector; +@@ -4378,7 +4380,7 @@ void amdgpu_dm_atomic_commit_tail( + new_acrtc_state = to_dm_crtc_state(acrtc->base.state); + + update_stream_scaling_settings(&con_new_state->base.crtc->mode, +- con_new_state, (struct dc_stream *)new_acrtc_state->stream); ++ con_new_state, (struct dc_stream_state *)new_acrtc_state->stream); + + status = dc_stream_get_status(new_acrtc_state->stream); + WARN_ON(!status); +@@ -4534,7 +4536,7 @@ void dm_restore_drm_connector_state(struct drm_device *dev, struct drm_connector + static uint32_t add_val_sets_surface( + struct dc_validation_set *val_sets, + uint32_t set_count, +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dc_plane_state *surface) + { + uint32_t i = 0, j = 0; +@@ -4557,8 +4559,8 @@ static uint32_t add_val_sets_surface( + static uint32_t update_in_val_sets_stream( + struct dc_validation_set *val_sets, + uint32_t set_count, +- struct dc_stream *old_stream, +- struct dc_stream *new_stream, ++ struct dc_stream_state *old_stream, ++ struct dc_stream_state *new_stream, + struct drm_crtc *crtc) + { + uint32_t i = 0; +@@ -4581,7 +4583,7 @@ static uint32_t update_in_val_sets_stream( + static uint32_t remove_from_val_sets( + struct dc_validation_set *val_sets, + uint32_t set_count, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + int i; + +@@ -4703,7 +4705,7 @@ int amdgpu_dm_atomic_check(struct drm_device *dev, + for_each_crtc_in_state(state, crtc, crtc_state, i) { + struct amdgpu_crtc *acrtc = NULL; + struct amdgpu_connector *aconnector = NULL; +- struct dc_stream *new_stream = NULL; ++ struct dc_stream_state *new_stream = NULL; + struct drm_connector_state *conn_state = NULL; + struct dm_connector_state *dm_conn_state = NULL; + +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h +index dcf1f77..cca65a3 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h +@@ -201,7 +201,7 @@ struct dm_plane_state { + + struct dm_crtc_state { + struct drm_crtc_state base; +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + }; + + #define to_dm_crtc_state(x) container_of(x, struct dm_crtc_state, base) +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c +index 0a61558..4a12453 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c +@@ -174,7 +174,7 @@ static void get_payload_table( + */ + bool dm_helpers_dp_mst_write_payload_allocation_table( + struct dc_context *ctx, +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dp_mst_stream_allocation_table *proposed_table, + bool enable) + { +@@ -264,7 +264,7 @@ bool dm_helpers_dp_mst_write_payload_allocation_table( + */ + bool dm_helpers_dp_mst_poll_for_allocation_change_trigger( + struct dc_context *ctx, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + struct amdgpu_connector *aconnector; + struct drm_dp_mst_topology_mgr *mst_mgr; +@@ -290,7 +290,7 @@ bool dm_helpers_dp_mst_poll_for_allocation_change_trigger( + + bool dm_helpers_dp_mst_send_payload_allocation( + struct dc_context *ctx, +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + bool enable) + { + struct amdgpu_connector *aconnector; +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c +index 500788c..8b6b763 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc.c +@@ -149,12 +149,12 @@ static bool create_links( + } + + static bool stream_adjust_vmin_vmax(struct dc *dc, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + int vmin, int vmax) + { + /* TODO: Support multiple streams */ + struct core_dc *core_dc = DC_TO_CORE(dc); +- struct dc_stream *stream = streams[0]; ++ struct dc_stream_state *stream = streams[0]; + int i = 0; + bool ret = false; + +@@ -175,12 +175,12 @@ static bool stream_adjust_vmin_vmax(struct dc *dc, + } + + static bool stream_get_crtc_position(struct dc *dc, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + unsigned int *v_pos, unsigned int *nom_v_pos) + { + /* TODO: Support multiple streams */ + struct core_dc *core_dc = DC_TO_CORE(dc); +- struct dc_stream *stream = streams[0]; ++ struct dc_stream_state *stream = streams[0]; + int i = 0; + bool ret = false; + struct crtc_position position; +@@ -200,7 +200,7 @@ static bool stream_get_crtc_position(struct dc *dc, + return ret; + } + +-static bool set_gamut_remap(struct dc *dc, const struct dc_stream *stream) ++static bool set_gamut_remap(struct dc *dc, const struct dc_stream_state *stream) + { + struct core_dc *core_dc = DC_TO_CORE(dc); + int i = 0; +@@ -218,7 +218,7 @@ static bool set_gamut_remap(struct dc *dc, const struct dc_stream *stream) + return ret; + } + +-static bool program_csc_matrix(struct dc *dc, struct dc_stream *stream) ++static bool program_csc_matrix(struct dc *dc, struct dc_stream_state *stream) + { + struct core_dc *core_dc = DC_TO_CORE(dc); + int i = 0; +@@ -241,7 +241,7 @@ static bool program_csc_matrix(struct dc *dc, struct dc_stream *stream) + } + + static void set_static_screen_events(struct dc *dc, +- struct dc_stream **streams, ++ struct dc_stream_state **streams, + int num_streams, + const struct dc_static_screen_events *events) + { +@@ -252,7 +252,7 @@ static void set_static_screen_events(struct dc *dc, + int num_pipes_affected = 0; + + for (i = 0; i < num_streams; i++) { +- struct dc_stream *stream = streams[i]; ++ struct dc_stream_state *stream = streams[i]; + + for (j = 0; j < MAX_PIPES; j++) { + if (core_dc->current_context->res_ctx.pipe_ctx[j].stream +@@ -333,7 +333,7 @@ static void set_test_pattern( + cust_pattern_size); + } + +-void set_dither_option(struct dc_stream *stream, ++void set_dither_option(struct dc_stream_state *stream, + enum dc_dither_option option) + { + struct bit_depth_reduction_params params; +@@ -769,7 +769,7 @@ bool dc_validate_resources( + + bool dc_validate_guaranteed( + const struct dc *dc, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + struct core_dc *core_dc = DC_TO_CORE(dc); + enum dc_status result = DC_ERROR_UNEXPECTED; +@@ -893,7 +893,7 @@ static bool context_changed( + + static bool streams_changed( + struct core_dc *dc, +- struct dc_stream *streams[], ++ struct dc_stream_state *streams[], + uint8_t stream_count) + { + uint8_t i; +@@ -912,7 +912,7 @@ static bool streams_changed( + bool dc_enable_stereo( + struct dc *dc, + struct validate_context *context, +- struct dc_stream *streams[], ++ struct dc_stream_state *streams[], + uint8_t stream_count) + { + bool ret = true; +@@ -958,7 +958,7 @@ static bool dc_commit_context_no_check(struct dc *dc, struct validate_context *c + enum dc_status result = DC_ERROR_UNEXPECTED; + struct pipe_ctx *pipe; + int i, j, k, l; +- struct dc_stream *dc_streams[MAX_STREAMS] = {0}; ++ struct dc_stream_state *dc_streams[MAX_STREAMS] = {0}; + + for (i = 0; i < context->stream_count; i++) + dc_streams[i] = context->streams[i]; +@@ -1031,7 +1031,7 @@ bool dc_commit_context(struct dc *dc, struct validate_context *context) + __func__, context->stream_count); + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + dc_stream_log(stream, + core_dc->ctx->logger, +@@ -1046,7 +1046,7 @@ bool dc_commit_context(struct dc *dc, struct validate_context *context) + + bool dc_commit_streams( + struct dc *dc, +- struct dc_stream *streams[], ++ struct dc_stream_state *streams[], + uint8_t stream_count) + { + struct core_dc *core_dc = DC_TO_CORE(dc); +@@ -1062,7 +1062,7 @@ bool dc_commit_streams( + __func__, stream_count); + + for (i = 0; i < stream_count; i++) { +- struct dc_stream *stream = streams[i]; ++ struct dc_stream_state *stream = streams[i]; + struct dc_stream_status *status = dc_stream_get_status(stream); + int j; + +@@ -1138,7 +1138,7 @@ bool dc_commit_surfaces_to_stream( + struct dc *dc, + struct dc_plane_state **new_surfaces, + uint8_t new_surface_count, +- struct dc_stream *dc_stream) ++ struct dc_stream_state *dc_stream) + { + struct dc_surface_update updates[MAX_SURFACES]; + struct dc_flip_addrs flip_addr[MAX_SURFACES]; +@@ -1395,7 +1395,7 @@ enum surface_update_type update_surface_trace_level = UPDATE_TYPE_FULL; + + void dc_update_surfaces_and_stream(struct dc *dc, + struct dc_surface_update *srf_updates, int surface_count, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct dc_stream_update *stream_update) + { + struct core_dc *core_dc = DC_TO_CORE(dc); +@@ -1723,7 +1723,7 @@ uint8_t dc_get_current_stream_count(const struct dc *dc) + return core_dc->current_context->stream_count; + } + +-struct dc_stream *dc_get_stream_at_index(const struct dc *dc, uint8_t i) ++struct dc_stream_state *dc_get_stream_at_index(const struct dc *dc, uint8_t i) + { + struct core_dc *core_dc = DC_TO_CORE(dc); + if (i < core_dc->current_context->stream_count) +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c +index a983a5e..7a2fe2f 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c +@@ -1143,7 +1143,7 @@ static void dpcd_configure_panel_mode( + + static void enable_stream_features(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct dc_link *link = stream->sink->link; + union down_spread_ctrl downspread; + +@@ -1159,7 +1159,7 @@ static void enable_stream_features(struct pipe_ctx *pipe_ctx) + + static enum dc_status enable_link_dp(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + enum dc_status status; + bool skip_video_pattern; + struct dc_link *link = stream->sink->link; +@@ -1250,7 +1250,7 @@ static enum dc_status enable_link_dp_mst(struct pipe_ctx *pipe_ctx) + + static void enable_link_hdmi(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct dc_link *link = stream->sink->link; + enum dc_color_depth display_color_depth; + +@@ -1341,7 +1341,7 @@ static void disable_link(struct dc_link *link, enum signal_type signal) + } + + enum dc_status dc_link_validate_mode_timing( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dc_link *link, + const struct dc_crtc_timing *timing) + { +@@ -1374,7 +1374,7 @@ enum dc_status dc_link_validate_mode_timing( + + + bool dc_link_set_backlight_level(const struct dc_link *link, uint32_t level, +- uint32_t frame_ramp, const struct dc_stream *stream) ++ uint32_t frame_ramp, const struct dc_stream_state *stream) + { + struct core_dc *core_dc = DC_TO_CORE(link->ctx->dc); + struct abm *abm = core_dc->res_pool->abm; +@@ -1450,7 +1450,7 @@ bool dc_link_get_psr_state(const struct dc_link *link, uint32_t *psr_state) + } + + bool dc_link_setup_psr(struct dc_link *link, +- const struct dc_stream *stream, struct psr_config *psr_config, ++ const struct dc_stream_state *stream, struct psr_config *psr_config, + struct psr_context *psr_context) + { + struct core_dc *core_dc = DC_TO_CORE(link->ctx->dc); +@@ -1587,7 +1587,7 @@ void core_link_resume(struct dc_link *link) + program_hpd_filter(link); + } + +-static struct fixed31_32 get_pbn_per_slot(struct dc_stream *stream) ++static struct fixed31_32 get_pbn_per_slot(struct dc_stream_state *stream) + { + struct dc_link_settings *link_settings = + &stream->sink->link->cur_link_settings; +@@ -1696,7 +1696,7 @@ static void update_mst_stream_alloc_table( + */ + static enum dc_status allocate_mst_payload(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct dc_link *link = stream->sink->link; + struct link_encoder *link_encoder = link->link_enc; + struct stream_encoder *stream_encoder = pipe_ctx->stream_enc; +@@ -1778,7 +1778,7 @@ static enum dc_status allocate_mst_payload(struct pipe_ctx *pipe_ctx) + + static enum dc_status deallocate_mst_payload(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct dc_link *link = stream->sink->link; + struct link_encoder *link_encoder = link->link_enc; + struct stream_encoder *stream_encoder = pipe_ctx->stream_enc; +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c +index 1750634..50724f9 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c +@@ -1433,7 +1433,7 @@ bool dp_validate_mode_timing( + return false; + } + +-void decide_link_settings(struct dc_stream *stream, ++void decide_link_settings(struct dc_stream_state *stream, + struct dc_link_settings *link_setting) + { + +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 d346101..7a1c84a 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c +@@ -294,8 +294,8 @@ void resource_reference_clock_source( + } + + bool resource_are_streams_timing_synchronizable( +- struct dc_stream *stream1, +- struct dc_stream *stream2) ++ struct dc_stream_state *stream1, ++ struct dc_stream_state *stream2) + { + if (stream1->timing.h_total != stream2->timing.h_total) + return false; +@@ -431,7 +431,7 @@ static void rect_swap_helper(struct rect *rect) + static void calculate_viewport(struct pipe_ctx *pipe_ctx) + { + const struct dc_plane_state *surface = pipe_ctx->surface; +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + struct scaler_data *data = &pipe_ctx->scl_data; + struct rect surf_src = surface->src_rect; + struct rect clip = { 0 }; +@@ -530,7 +530,7 @@ static void calculate_viewport(struct pipe_ctx *pipe_ctx) + static void calculate_recout(struct pipe_ctx *pipe_ctx, struct view *recout_skip) + { + const struct dc_plane_state *surface = pipe_ctx->surface; +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + struct rect surf_src = surface->src_rect; + struct rect surf_clip = surface->clip_rect; + int recout_full_x, recout_full_y; +@@ -608,7 +608,7 @@ static void calculate_recout(struct pipe_ctx *pipe_ctx, struct view *recout_skip + static void calculate_scaling_ratios(struct pipe_ctx *pipe_ctx) + { + const struct dc_plane_state *surface = pipe_ctx->surface; +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + struct rect surf_src = surface->src_rect; + const int in_w = stream->src.width; + const int in_h = stream->src.height; +@@ -920,7 +920,7 @@ struct pipe_ctx *find_idle_secondary_pipe( + + struct pipe_ctx *resource_get_head_pipe_for_stream( + struct resource_context *res_ctx, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + for (i = 0; i < MAX_PIPES; i++) { +@@ -940,7 +940,7 @@ struct pipe_ctx *resource_get_head_pipe_for_stream( + static struct pipe_ctx *acquire_free_pipe_for_stream( + struct validate_context *context, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + struct resource_context *res_ctx = &context->res_ctx; +@@ -979,7 +979,7 @@ static struct pipe_ctx *acquire_free_pipe_for_stream( + + static void release_free_pipes_for_stream( + struct resource_context *res_ctx, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + +@@ -997,7 +997,7 @@ static void release_free_pipes_for_stream( + static int acquire_first_split_pipe( + struct resource_context *res_ctx, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + +@@ -1030,7 +1030,7 @@ static int acquire_first_split_pipe( + bool resource_attach_surfaces_to_context( + struct dc_plane_state * const *surfaces, + int surface_count, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct validate_context *context, + const struct resource_pool *pool) + { +@@ -1118,8 +1118,8 @@ bool resource_attach_surfaces_to_context( + } + + +-static bool is_timing_changed(struct dc_stream *cur_stream, +- struct dc_stream *new_stream) ++static bool is_timing_changed(struct dc_stream_state *cur_stream, ++ struct dc_stream_state *new_stream) + { + if (cur_stream == NULL) + return true; +@@ -1141,7 +1141,7 @@ static bool is_timing_changed(struct dc_stream *cur_stream, + } + + static bool are_stream_backends_same( +- struct dc_stream *stream_a, struct dc_stream *stream_b) ++ struct dc_stream_state *stream_a, struct dc_stream_state *stream_b) + { + if (stream_a == stream_b) + return true; +@@ -1156,7 +1156,7 @@ static bool are_stream_backends_same( + } + + bool dc_is_stream_unchanged( +- struct dc_stream *old_stream, struct dc_stream *stream) ++ struct dc_stream_state *old_stream, struct dc_stream_state *stream) + { + + if (!are_stream_backends_same(old_stream, stream)) +@@ -1233,7 +1233,7 @@ static void set_audio_in_use( + static int acquire_first_free_pipe( + struct resource_context *res_ctx, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + +@@ -1260,7 +1260,7 @@ static int acquire_first_free_pipe( + static struct stream_encoder *find_first_free_match_stream_enc_for_link( + struct resource_context *res_ctx, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i; + int j = -1; +@@ -1311,7 +1311,7 @@ static struct audio *find_first_free_audio( + return 0; + } + +-static void update_stream_signal(struct dc_stream *stream) ++static void update_stream_signal(struct dc_stream_state *stream) + { + if (stream->output_signal == SIGNAL_TYPE_NONE) { + struct dc_sink *dc_sink = stream->sink; +@@ -1334,12 +1334,12 @@ static void update_stream_signal(struct dc_stream *stream) + } + + bool resource_is_stream_unchanged( +- struct validate_context *old_context, struct dc_stream *stream) ++ struct validate_context *old_context, struct dc_stream_state *stream) + { + int i; + + for (i = 0; i < old_context->stream_count; i++) { +- struct dc_stream *old_stream = old_context->streams[i]; ++ struct dc_stream_state *old_stream = old_context->streams[i]; + + if (are_stream_backends_same(old_stream, stream)) + return true; +@@ -1352,7 +1352,7 @@ static void copy_pipe_ctx( + const struct pipe_ctx *from_pipe_ctx, struct pipe_ctx *to_pipe_ctx) + { + struct dc_plane_state *surface = to_pipe_ctx->surface; +- struct dc_stream *stream = to_pipe_ctx->stream; ++ struct dc_stream_state *stream = to_pipe_ctx->stream; + + *to_pipe_ctx = *from_pipe_ctx; + to_pipe_ctx->stream = stream; +@@ -1360,14 +1360,14 @@ static void copy_pipe_ctx( + to_pipe_ctx->surface = surface; + } + +-static struct dc_stream *find_pll_sharable_stream( +- struct dc_stream *stream_needs_pll, ++static struct dc_stream_state *find_pll_sharable_stream( ++ struct dc_stream_state *stream_needs_pll, + struct validate_context *context) + { + int i; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream_has_pll = context->streams[i]; ++ struct dc_stream_state *stream_has_pll = context->streams[i]; + + /* We are looking for non dp, non virtual stream */ + if (resource_are_streams_timing_synchronizable( +@@ -1411,7 +1411,7 @@ static int get_norm_pix_clk(const struct dc_crtc_timing *timing) + return normalized_pix_clk; + } + +-static void calculate_phy_pix_clks(struct dc_stream *stream) ++static void calculate_phy_pix_clks(struct dc_stream_state *stream) + { + update_stream_signal(stream); + +@@ -1433,7 +1433,7 @@ enum dc_status resource_map_pool_resources( + int i, j; + + for (i = 0; old_context && i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (!resource_is_stream_unchanged(old_context, stream)) { + if (stream != NULL && old_context->streams[i] != NULL) { +@@ -1486,7 +1486,7 @@ enum dc_status resource_map_pool_resources( + } + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + struct pipe_ctx *pipe_ctx = NULL; + int pipe_idx = -1; + +@@ -1581,7 +1581,7 @@ static void set_avi_info_frame( + struct encoder_info_packet *info_packet, + struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + enum dc_color_space color_space = COLOR_SPACE_UNKNOWN; + struct info_frame info_frame = { {0} }; + uint32_t pixel_encoding = 0; +@@ -1821,7 +1821,7 @@ static void set_avi_info_frame( + + static void set_vendor_info_packet( + struct encoder_info_packet *info_packet, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + uint32_t length = 0; + bool hdmi_vic_mode = false; +@@ -1934,7 +1934,7 @@ static void set_vendor_info_packet( + + static void set_spd_info_packet( + struct encoder_info_packet *info_packet, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + /* SPD info packet for FreeSync */ + +@@ -2056,7 +2056,7 @@ static void set_spd_info_packet( + static void set_hdr_static_info_packet( + struct encoder_info_packet *info_packet, + struct dc_plane_state *surface, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + uint16_t i = 0; + enum signal_type signal = stream->signal; +@@ -2159,7 +2159,7 @@ static void set_hdr_static_info_packet( + + static void set_vsc_info_packet( + struct encoder_info_packet *info_packet, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + unsigned int vscPacketRevision = 0; + unsigned int i; +@@ -2312,7 +2312,7 @@ enum dc_status resource_map_clock_resources( + + /* acquire new resources */ + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -2392,7 +2392,7 @@ bool pipe_need_reprogram( + return false; + } + +-void resource_build_bit_depth_reduction_params(struct dc_stream *stream, ++void resource_build_bit_depth_reduction_params(struct dc_stream_state *stream, + struct bit_depth_reduction_params *fmt_bit_depth) + { + enum dc_dither_option option = stream->dither_option; +@@ -2502,7 +2502,7 @@ void resource_build_bit_depth_reduction_params(struct dc_stream *stream, + fmt_bit_depth->pixel_encoding = pixel_encoding; + } + +-bool dc_validate_stream(const struct dc *dc, struct dc_stream *stream) ++bool dc_validate_stream(const struct dc *dc, struct dc_stream_state *stream) + { + struct core_dc *core_dc = DC_TO_CORE(dc); + struct dc_context *dc_ctx = core_dc->ctx; +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c +index a77e1e8..7a87f38 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c +@@ -34,7 +34,7 @@ + * Private functions + ******************************************************************************/ + +-static bool construct(struct dc_stream *stream, ++static bool construct(struct dc_stream_state *stream, + struct dc_sink *dc_sink_data) + { + uint32_t i = 0; +@@ -84,7 +84,7 @@ static bool construct(struct dc_stream *stream, + return true; + } + +-static void destruct(struct dc_stream *stream) ++static void destruct(struct dc_stream_state *stream) + { + dc_sink_release(stream->sink); + if (stream->out_transfer_func != NULL) { +@@ -94,14 +94,14 @@ static void destruct(struct dc_stream *stream) + } + } + +-void dc_stream_retain(struct dc_stream *stream) ++void dc_stream_retain(struct dc_stream_state *stream) + { + + ASSERT(stream->ref_count > 0); + stream->ref_count++; + } + +-void dc_stream_release(struct dc_stream *stream) ++void dc_stream_release(struct dc_stream_state *stream) + { + + if (stream != NULL) { +@@ -115,15 +115,15 @@ void dc_stream_release(struct dc_stream *stream) + } + } + +-struct dc_stream *dc_create_stream_for_sink( ++struct dc_stream_state *dc_create_stream_for_sink( + struct dc_sink *sink) + { +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + + if (sink == NULL) + goto alloc_fail; + +- stream = dm_alloc(sizeof(struct dc_stream)); ++ stream = dm_alloc(sizeof(struct dc_stream_state)); + + if (NULL == stream) + goto alloc_fail; +@@ -143,7 +143,7 @@ struct dc_stream *dc_create_stream_for_sink( + } + + struct dc_stream_status *dc_stream_get_status( +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + uint8_t i; + struct core_dc *dc = DC_TO_CORE(stream->ctx->dc); +@@ -161,7 +161,7 @@ struct dc_stream_status *dc_stream_get_status( + * Update the cursor attributes and set cursor surface address + */ + bool dc_stream_set_cursor_attributes( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + const struct dc_cursor_attributes *attributes) + { + int i; +@@ -196,7 +196,7 @@ bool dc_stream_set_cursor_attributes( + } + + bool dc_stream_set_cursor_position( +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + const struct dc_cursor_position *position) + { + int i; +@@ -245,7 +245,7 @@ bool dc_stream_set_cursor_position( + return true; + } + +-uint32_t dc_stream_get_vblank_counter(const struct dc_stream *stream) ++uint32_t dc_stream_get_vblank_counter(const struct dc_stream_state *stream) + { + uint8_t i; + struct core_dc *core_dc = DC_TO_CORE(stream->ctx->dc); +@@ -264,7 +264,7 @@ uint32_t dc_stream_get_vblank_counter(const struct dc_stream *stream) + return 0; + } + +-bool dc_stream_get_scanoutpos(const struct dc_stream *stream, ++bool dc_stream_get_scanoutpos(const struct dc_stream_state *stream, + uint32_t *v_blank_start, + uint32_t *v_blank_end, + uint32_t *h_position, +@@ -297,7 +297,7 @@ bool dc_stream_get_scanoutpos(const struct dc_stream *stream, + + + void dc_stream_log( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dal_logger *dm_logger, + enum dc_log_type log_type) + { +diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h +index d1943b9..ab805965 100644 +--- a/drivers/gpu/drm/amd/display/dc/dc.h ++++ b/drivers/gpu/drm/amd/display/dc/dc.h +@@ -101,30 +101,30 @@ struct dc_cap_funcs { + struct dc_surface_dcc_cap *output); + }; + +-struct dc_stream_funcs { ++struct dc_stream_state_funcs { + bool (*adjust_vmin_vmax)(struct dc *dc, +- struct dc_stream **stream, ++ struct dc_stream_state **stream, + int num_streams, + int vmin, + int vmax); + bool (*get_crtc_position)(struct dc *dc, +- struct dc_stream **stream, ++ struct dc_stream_state **stream, + int num_streams, + unsigned int *v_pos, + unsigned int *nom_v_pos); + + bool (*set_gamut_remap)(struct dc *dc, +- const struct dc_stream *stream); ++ const struct dc_stream_state *stream); + + bool (*program_csc_matrix)(struct dc *dc, +- struct dc_stream *stream); ++ struct dc_stream_state *stream); + + void (*set_static_screen_events)(struct dc *dc, +- struct dc_stream **stream, ++ struct dc_stream_state **stream, + int num_streams, + const struct dc_static_screen_events *events); + +- void (*set_dither_option)(struct dc_stream *stream, ++ void (*set_dither_option)(struct dc_stream_state *stream, + enum dc_dither_option option); + }; + +@@ -190,7 +190,7 @@ struct dc_debug { + struct dc { + struct dc_caps caps; + struct dc_cap_funcs cap_funcs; +- struct dc_stream_funcs stream_funcs; ++ struct dc_stream_state_funcs stream_funcs; + struct dc_link_funcs link_funcs; + struct dc_config config; + struct dc_debug debug; +@@ -426,7 +426,7 @@ bool dc_commit_surfaces_to_stream( + struct dc *dc, + struct dc_plane_state **dc_surfaces, + uint8_t surface_count, +- struct dc_stream *stream); ++ struct dc_stream_state *stream); + + bool dc_post_update_surfaces_to_stream( + struct dc *dc); +@@ -478,7 +478,7 @@ struct dc_stream_status { + struct dc_link *link; + }; + +-struct dc_stream { ++struct dc_stream_state { + struct dc_sink *sink; + struct dc_crtc_timing timing; + +@@ -529,7 +529,7 @@ struct dc_stream_update { + }; + + bool dc_is_stream_unchanged( +- struct dc_stream *old_stream, struct dc_stream *stream); ++ struct dc_stream_state *old_stream, struct dc_stream_state *stream); + + /* + * Setup stream attributes if no stream updates are provided +@@ -548,30 +548,30 @@ bool dc_is_stream_unchanged( + + void dc_update_surfaces_and_stream(struct dc *dc, + struct dc_surface_update *surface_updates, int surface_count, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct dc_stream_update *stream_update); + + /* + * Log the current stream state. + */ + void dc_stream_log( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dal_logger *dc_logger, + enum dc_log_type log_type); + + uint8_t dc_get_current_stream_count(const struct dc *dc); +-struct dc_stream *dc_get_stream_at_index(const struct dc *dc, uint8_t i); ++struct dc_stream_state *dc_get_stream_at_index(const struct dc *dc, uint8_t i); + + /* + * Return the current frame counter. + */ +-uint32_t dc_stream_get_vblank_counter(const struct dc_stream *stream); ++uint32_t dc_stream_get_vblank_counter(const struct dc_stream_state *stream); + + /* TODO: Return parsed values rather than direct register read + * This has a dependency on the caller (amdgpu_get_crtc_scanoutpos) + * being refactored properly to be dce-specific + */ +-bool dc_stream_get_scanoutpos(const struct dc_stream *stream, ++bool dc_stream_get_scanoutpos(const struct dc_stream_state *stream, + uint32_t *v_blank_start, + uint32_t *v_blank_end, + uint32_t *h_position, +@@ -581,12 +581,12 @@ bool dc_stream_get_scanoutpos(const struct dc_stream *stream, + * Structure to store surface/stream associations for validation + */ + struct dc_validation_set { +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + struct dc_plane_state *surfaces[MAX_SURFACES]; + uint8_t surface_count; + }; + +-bool dc_validate_stream(const struct dc *dc, struct dc_stream *stream); ++bool dc_validate_stream(const struct dc *dc, struct dc_stream_state *stream); + + bool dc_validate_plane(const struct dc *dc, const struct dc_plane_state *plane_state); + /* +@@ -615,7 +615,7 @@ bool dc_validate_resources( + + bool dc_validate_guaranteed( + const struct dc *dc, +- struct dc_stream *stream); ++ struct dc_stream_state *stream); + + void dc_resource_validate_ctx_copy_construct( + const struct validate_context *src_ctx, +@@ -644,7 +644,7 @@ bool dc_commit_context(struct dc *dc, struct validate_context *context); + */ + bool dc_commit_streams( + struct dc *dc, +- struct dc_stream *streams[], ++ struct dc_stream_state *streams[], + uint8_t stream_count); + /* + * Enable stereo when commit_streams is not required, +@@ -653,19 +653,19 @@ bool dc_commit_streams( + bool dc_enable_stereo( + struct dc *dc, + struct validate_context *context, +- struct dc_stream *streams[], ++ struct dc_stream_state *streams[], + uint8_t stream_count); + + /** + * Create a new default stream for the requested sink + */ +-struct dc_stream *dc_create_stream_for_sink(struct dc_sink *dc_sink); ++struct dc_stream_state *dc_create_stream_for_sink(struct dc_sink *dc_sink); + +-void dc_stream_retain(struct dc_stream *dc_stream); +-void dc_stream_release(struct dc_stream *dc_stream); ++void dc_stream_retain(struct dc_stream_state *dc_stream); ++void dc_stream_release(struct dc_stream_state *dc_stream); + + struct dc_stream_status *dc_stream_get_status( +- struct dc_stream *dc_stream); ++ struct dc_stream_state *dc_stream); + + enum surface_update_type dc_check_update_surfaces_for_stream( + struct dc *dc, +@@ -804,7 +804,7 @@ const struct graphics_object_id dc_get_link_id_at_index( + + /* Set backlight level of an embedded panel (eDP, LVDS). */ + bool dc_link_set_backlight_level(const struct dc_link *dc_link, uint32_t level, +- uint32_t frame_ramp, const struct dc_stream *stream); ++ uint32_t frame_ramp, const struct dc_stream_state *stream); + + bool dc_link_set_abm_disable(const struct dc_link *dc_link); + +@@ -813,7 +813,7 @@ bool dc_link_set_psr_enable(const struct dc_link *dc_link, bool enable); + bool dc_link_get_psr_state(const struct dc_link *dc_link, uint32_t *psr_state); + + bool dc_link_setup_psr(struct dc_link *dc_link, +- const struct dc_stream *stream, struct psr_config *psr_config, ++ const struct dc_stream_state *stream, struct psr_config *psr_config, + struct psr_context *psr_context); + + /* Request DC to detect if there is a Panel connected. +@@ -927,11 +927,11 @@ bool dc_sink_set_container_id(struct dc_sink *dc_sink, const struct dc_container + ******************************************************************************/ + /* TODO: Deprecated once we switch to dc_set_cursor_position */ + bool dc_stream_set_cursor_attributes( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + const struct dc_cursor_attributes *attributes); + + bool dc_stream_set_cursor_position( +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + const struct dc_cursor_position *position); + + /* Newer interfaces */ +diff --git a/drivers/gpu/drm/amd/display/dc/dc_types.h b/drivers/gpu/drm/amd/display/dc/dc_types.h +index 4fb9584..a47f7472 100644 +--- a/drivers/gpu/drm/amd/display/dc/dc_types.h ++++ b/drivers/gpu/drm/amd/display/dc/dc_types.h +@@ -35,7 +35,7 @@ + + /* forward declarations */ + struct dc_plane_state; +-struct dc_stream; ++struct dc_stream_state; + struct dc_link; + struct dc_sink; + struct dal; +diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c +index 24d0c48..5bb2ac7 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c ++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c +@@ -1009,7 +1009,7 @@ bool dce110_link_encoder_construct( + + bool dce110_link_encoder_validate_output_with_stream( + struct link_encoder *enc, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + struct dce110_link_encoder *enc110 = TO_DCE110_LINK_ENC(enc); + bool is_valid; +diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h +index 5f05ca6..5960fb9 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h ++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.h +@@ -196,7 +196,7 @@ bool dce110_link_encoder_validate_wireless_output( + + bool dce110_link_encoder_validate_output_with_stream( + struct link_encoder *enc, +- const struct dc_stream *stream); ++ const struct dc_stream_state *stream); + + /****************** HW programming ************************/ + +diff --git a/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c b/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +index 2cf2fef..98fb7f0 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c +@@ -660,7 +660,7 @@ static enum dc_status build_mapped_resource( + uint8_t i, j; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -765,7 +765,7 @@ enum dc_status dce100_validate_with_context( + + enum dc_status dce100_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context) + { + enum dc_status result = DC_ERROR_UNEXPECTED; +diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c +index 84dc8916..e4310a3 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c ++++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c +@@ -623,7 +623,7 @@ static bool dce110_translate_regamma_to_hw_format(const struct dc_transfer_func + + static bool dce110_set_output_transfer_func( + struct pipe_ctx *pipe_ctx, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + struct transform *xfm = pipe_ctx->xfm; + +@@ -745,7 +745,7 @@ void dce110_enable_stream(struct pipe_ctx *pipe_ctx) + + void dce110_disable_stream(struct pipe_ctx *pipe_ctx) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct dc_link *link = stream->sink->link; + + if (pipe_ctx->audio) { +@@ -833,7 +833,7 @@ static void build_audio_output( + const struct pipe_ctx *pipe_ctx, + struct audio_output *audio_output) + { +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + audio_output->engine_id = pipe_ctx->stream_enc->id; + + audio_output->signal = pipe_ctx->stream->signal; +@@ -981,7 +981,7 @@ static enum dc_status dce110_prog_pixclk_crtc_otg( + struct validate_context *context, + struct core_dc *dc) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct pipe_ctx *pipe_ctx_old = &dc->current_context->res_ctx. + pipe_ctx[pipe_ctx->pipe_idx]; + struct tg_color black_color = {0}; +@@ -1037,7 +1037,7 @@ static enum dc_status apply_single_controller_ctx_to_hw( + struct validate_context *context, + struct core_dc *dc) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + struct pipe_ctx *pipe_ctx_old = &dc->current_context->res_ctx. + pipe_ctx[pipe_ctx->pipe_idx]; + +@@ -1229,7 +1229,7 @@ void dce110_enable_accelerated_mode(struct core_dc *dc) + + static uint32_t compute_pstate_blackout_duration( + struct bw_fixed blackout_duration, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + uint32_t total_dest_line_time_ns; + uint32_t pstate_blackout_duration_ns; +@@ -2325,7 +2325,7 @@ void dce110_fill_display_configs( + for (j = 0; j < context->stream_count; j++) { + int k; + +- const struct dc_stream *stream = context->streams[j]; ++ const struct dc_stream_state *stream = context->streams[j]; + struct dm_pp_single_disp_config *cfg = + &pp_display_cfg->disp_configs[num_cfgs]; + const struct pipe_ctx *pipe_ctx = NULL; +@@ -2370,7 +2370,7 @@ uint32_t dce110_get_min_vblank_time_us(const struct validate_context *context) + uint32_t min_vertical_blank_time = -1; + + for (j = 0; j < context->stream_count; j++) { +- struct dc_stream *stream = context->streams[j]; ++ struct dc_stream_state *stream = context->streams[j]; + uint32_t vertical_blank_in_pixels = 0; + uint32_t vertical_blank_time = 0; + +diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +index 5c1790b..89b21bd 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +@@ -718,7 +718,7 @@ static void get_pixel_clock_parameters( + const struct pipe_ctx *pipe_ctx, + struct pixel_clk_params *pixel_clk_params) + { +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + + /*TODO: is this halved for YCbCr 420? in that case we might want to move + * the pixel clock normalization for hdmi up to here instead of doing it +@@ -780,7 +780,7 @@ static enum dc_status build_mapped_resource( + uint8_t i, j; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -973,7 +973,7 @@ enum dc_status dce110_validate_with_context( + + enum dc_status dce110_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context) + { + enum dc_status result = DC_ERROR_UNEXPECTED; +@@ -1006,7 +1006,7 @@ enum dc_status dce110_validate_guaranteed( + static struct pipe_ctx *dce110_acquire_underlay( + struct validate_context *context, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + struct core_dc *dc = DC_TO_CORE(stream->ctx->dc); + struct resource_context *res_ctx = &context->res_ctx; +diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +index c68372f..68554d6 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +@@ -700,7 +700,7 @@ static void destruct(struct dce110_resource_pool *pool) + static struct clock_source *find_matching_pll( + struct resource_context *res_ctx, + const struct resource_pool *pool, +- const struct dc_stream *const stream) ++ const struct dc_stream_state *const stream) + { + switch (stream->sink->link->link_enc->transmitter) { + case TRANSMITTER_UNIPHY_A: +@@ -731,7 +731,7 @@ static enum dc_status build_mapped_resource( + uint8_t i, j; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -845,7 +845,7 @@ enum dc_status resource_map_phy_clock_resources( + + /* acquire new resources */ + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -949,7 +949,7 @@ enum dc_status dce112_validate_with_context( + + enum dc_status dce112_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct validate_context *context) + { + enum dc_status result = DC_ERROR_UNEXPECTED; +diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.h b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.h +index cb2c69f..feef559 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.h ++++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.h +@@ -44,7 +44,7 @@ enum dc_status dce112_validate_with_context( + + enum dc_status dce112_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context); + + bool dce112_validate_bandwidth( +diff --git a/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c b/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +index bcb6644..734b35e 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c +@@ -677,7 +677,7 @@ static enum dc_status build_mapped_resource( + uint8_t i, j; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) + continue; +@@ -781,7 +781,7 @@ enum dc_status dce80_validate_with_context( + + enum dc_status dce80_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context) + { + enum dc_status result = DC_ERROR_UNEXPECTED; +diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c +index 3979cb0..866f63d 100644 +--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c ++++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c +@@ -679,7 +679,7 @@ static enum dc_status dcn10_prog_pixclk_crtc_otg( + struct validate_context *context, + struct core_dc *dc) + { +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + enum dc_color_space color_space; + struct tg_color black_color = {0}; + bool enableStereo = stream->timing.timing_3d_format == TIMING_3D_FORMAT_NONE ? +@@ -1445,7 +1445,7 @@ static bool dcn10_translate_regamma_to_hw_format(const struct dc_transfer_func + + static bool dcn10_set_output_transfer_func( + struct pipe_ctx *pipe_ctx, +- const struct dc_stream *stream) ++ const struct dc_stream_state *stream) + { + struct transform *xfm = pipe_ctx->xfm; + +@@ -2321,7 +2321,7 @@ static void set_plane_config( + } + + static void dcn10_config_stereo_parameters( +- struct dc_stream *stream, struct crtc_stereo_flags *flags) ++ struct dc_stream_state *stream, struct crtc_stereo_flags *flags) + { + enum view_3d_format view_format = stream->view_format; + enum dc_timing_3d_format timing_3d_format =\ +@@ -2360,7 +2360,7 @@ static void dcn10_config_stereo_parameters( + static void dcn10_setup_stereo(struct pipe_ctx *pipe_ctx, struct core_dc *dc) + { + struct crtc_stereo_flags flags = { 0 }; +- struct dc_stream *stream = pipe_ctx->stream; ++ struct dc_stream_state *stream = pipe_ctx->stream; + + dcn10_config_stereo_parameters(stream, &flags); + +diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c +index 9d44f42..5a9fcbc 100644 +--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c +@@ -774,7 +774,7 @@ static void get_pixel_clock_parameters( + const struct pipe_ctx *pipe_ctx, + struct pixel_clk_params *pixel_clk_params) + { +- const struct dc_stream *stream = pipe_ctx->stream; ++ const struct dc_stream_state *stream = pipe_ctx->stream; + pixel_clk_params->requested_pix_clk = stream->timing.pix_clk_khz; + pixel_clk_params->encoder_object_id = stream->sink->link->link_enc->id; + pixel_clk_params->signal_type = pipe_ctx->stream->signal; +@@ -796,7 +796,7 @@ static void get_pixel_clock_parameters( + + } + +-static void build_clamping_params(struct dc_stream *stream) ++static void build_clamping_params(struct dc_stream_state *stream) + { + stream->clamping.clamping_level = CLAMPING_FULL_RANGE; + stream->clamping.c_depth = stream->timing.display_color_depth; +@@ -831,7 +831,7 @@ static enum dc_status build_mapped_resource( + uint8_t i, j; + + for (i = 0; i < context->stream_count; i++) { +- struct dc_stream *stream = context->streams[i]; ++ struct dc_stream_state *stream = context->streams[i]; + + if (old_context && resource_is_stream_unchanged(old_context, stream)) { + if (stream != NULL && old_context->streams[i] != NULL) { +@@ -916,7 +916,7 @@ enum dc_status dcn10_validate_with_context( + + enum dc_status dcn10_validate_guaranteed( + const struct core_dc *dc, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context) + { + enum dc_status result = DC_ERROR_UNEXPECTED; +@@ -947,7 +947,7 @@ enum dc_status dcn10_validate_guaranteed( + static struct pipe_ctx *dcn10_acquire_idle_pipe_for_layer( + struct validate_context *context, + const struct resource_pool *pool, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + struct resource_context *res_ctx = &context->res_ctx; + struct pipe_ctx *head_pipe = resource_get_head_pipe_for_stream(res_ctx, stream); +diff --git a/drivers/gpu/drm/amd/display/dc/dm_helpers.h b/drivers/gpu/drm/amd/display/dc/dm_helpers.h +index e8bd501..3901032 100644 +--- a/drivers/gpu/drm/amd/display/dc/dm_helpers.h ++++ b/drivers/gpu/drm/amd/display/dc/dm_helpers.h +@@ -45,7 +45,7 @@ enum dc_edid_status dm_helpers_parse_edid_caps( + */ + bool dm_helpers_dp_mst_write_payload_allocation_table( + struct dc_context *ctx, +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dp_mst_stream_allocation_table *proposed_table, + bool enable); + +@@ -54,13 +54,13 @@ bool dm_helpers_dp_mst_write_payload_allocation_table( + */ + bool dm_helpers_dp_mst_poll_for_allocation_change_trigger( + struct dc_context *ctx, +- const struct dc_stream *stream); ++ const struct dc_stream_state *stream); + /* + * Sends ALLOCATE_PAYLOAD message. + */ + bool dm_helpers_dp_mst_send_payload_allocation( + struct dc_context *ctx, +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + bool enable); + + bool dm_helpers_dp_mst_start_top_mgr( +diff --git a/drivers/gpu/drm/amd/display/dc/inc/core_types.h b/drivers/gpu/drm/amd/display/dc/inc/core_types.h +index 44a87c9..d5c0f9e 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/core_types.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/core_types.h +@@ -60,7 +60,7 @@ struct dc_link *link_create(const struct link_init_data *init_params); + void link_destroy(struct dc_link **link); + + enum dc_status dc_link_validate_mode_timing( +- const struct dc_stream *stream, ++ const struct dc_stream_state *stream, + struct dc_link *link, + const struct dc_crtc_timing *timing); + +@@ -92,7 +92,7 @@ struct resource_funcs { + + enum dc_status (*validate_guaranteed)( + const struct core_dc *dc, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct validate_context *context); + + bool (*validate_bandwidth)( +@@ -102,8 +102,7 @@ struct resource_funcs { + struct pipe_ctx *(*acquire_idle_pipe_for_layer)( + struct validate_context *context, + const struct resource_pool *pool, +- struct dc_stream *stream); +- ++ struct dc_stream_state *stream); + enum dc_status (*validate_plane)(const struct dc_plane_state *plane_state); + }; + +@@ -155,7 +154,7 @@ struct resource_pool { + + struct pipe_ctx { + struct dc_plane_state *surface; +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + + struct mem_input *mi; + struct input_pixel_processor *ipp; +@@ -240,7 +239,7 @@ union bw_context { + }; + + struct validate_context { +- struct dc_stream *streams[MAX_PIPES]; ++ struct dc_stream_state *streams[MAX_PIPES]; + struct dc_stream_status stream_status[MAX_PIPES]; + uint8_t stream_count; + +diff --git a/drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h b/drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h +index 1a4a605..7168dcc 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h +@@ -30,7 +30,7 @@ + #define LINK_TRAINING_RETRY_DELAY 50 /* ms */ + + struct dc_link; +-struct dc_stream; ++struct dc_stream_state; + struct dc_link_settings; + + bool dp_hbr_verify_link_cap( +@@ -50,7 +50,7 @@ bool dp_validate_mode_timing( + const struct dc_crtc_timing *timing); + + void decide_link_settings( +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct dc_link_settings *link_setting); + + bool perform_link_training_with_retries( +diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/link_encoder.h b/drivers/gpu/drm/amd/display/dc/inc/hw/link_encoder.h +index 28fb02f..38e4070 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/hw/link_encoder.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/hw/link_encoder.h +@@ -93,7 +93,7 @@ struct link_encoder { + + struct link_encoder_funcs { + bool (*validate_output_with_stream)( +- struct link_encoder *enc, const struct dc_stream *stream); ++ struct link_encoder *enc, const struct dc_stream_state *stream); + void (*hw_init)(struct link_encoder *enc); + void (*setup)(struct link_encoder *enc, + enum signal_type signal); +diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h b/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h +index c529ddd..7e03f8d 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h +@@ -92,7 +92,7 @@ struct hw_sequencer_funcs { + + bool (*set_output_transfer_func)( + struct pipe_ctx *pipe_ctx, +- const struct dc_stream *stream); ++ const struct dc_stream_state *stream); + + void (*power_down)(struct core_dc *dc); + +diff --git a/drivers/gpu/drm/amd/display/dc/inc/resource.h b/drivers/gpu/drm/amd/display/dc/inc/resource.h +index bfd7cfc..aef1197 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/resource.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/resource.h +@@ -103,8 +103,8 @@ void resource_reference_clock_source( + struct clock_source *clock_source); + + bool resource_are_streams_timing_synchronizable( +- struct dc_stream *stream1, +- struct dc_stream *stream2); ++ struct dc_stream_state *stream1, ++ struct dc_stream_state *stream2); + + struct clock_source *resource_find_used_clk_src_for_sharing( + struct resource_context *res_ctx, +@@ -116,12 +116,12 @@ struct clock_source *dc_resource_find_first_free_pll( + + struct pipe_ctx *resource_get_head_pipe_for_stream( + struct resource_context *res_ctx, +- struct dc_stream *stream); ++ struct dc_stream_state *stream); + + bool resource_attach_surfaces_to_context( + struct dc_plane_state *const *surfaces, + int surface_count, +- struct dc_stream *dc_stream, ++ struct dc_stream_state *dc_stream, + struct validate_context *context, + const struct resource_pool *pool); + +@@ -130,8 +130,7 @@ struct pipe_ctx *find_idle_secondary_pipe( + const struct resource_pool *pool); + + bool resource_is_stream_unchanged( +- struct validate_context *old_context, struct dc_stream *stream); +- ++ struct validate_context *old_context, struct dc_stream_state *stream); + + bool resource_validate_attach_surfaces( + const struct dc_validation_set set[], +@@ -162,7 +161,7 @@ bool pipe_need_reprogram( + struct pipe_ctx *pipe_ctx_old, + struct pipe_ctx *pipe_ctx); + +-void resource_build_bit_depth_reduction_params(struct dc_stream *stream, ++void resource_build_bit_depth_reduction_params(struct dc_stream_state *stream, + struct bit_depth_reduction_params *fmt_bit_depth); + + #endif /* DRIVERS_GPU_DRM_AMD_DC_DEV_DC_INC_RESOURCE_H_ */ +diff --git a/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c b/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c +index dd024c9..57b5a3b 100644 +--- a/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c ++++ b/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c +@@ -30,7 +30,7 @@ + + static bool virtual_link_encoder_validate_output_with_stream( + struct link_encoder *enc, +- const struct dc_stream *stream) { return true; } ++ const struct dc_stream_state *stream) { return true; } + + static void virtual_link_encoder_hw_init(struct link_encoder *enc) {} + +diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c +index 358f8a8..f0a3e43 100644 +--- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c ++++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c +@@ -111,7 +111,7 @@ struct freesync_state { + }; + + struct freesync_entity { +- struct dc_stream *stream; ++ struct dc_stream_state *stream; + struct mod_freesync_caps *caps; + struct freesync_state state; + struct mod_freesync_user_enable user_enable; +@@ -229,7 +229,7 @@ void mod_freesync_destroy(struct mod_freesync *mod_freesync) + * on the core_freesync->map and returns the corresponding index + */ + static unsigned int map_index_from_stream(struct core_freesync *core_freesync, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + unsigned int index = 0; + +@@ -244,7 +244,7 @@ static unsigned int map_index_from_stream(struct core_freesync *core_freesync, + } + + bool mod_freesync_add_stream(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, struct mod_freesync_caps *caps) ++ struct dc_stream_state *stream, struct mod_freesync_caps *caps) + { + struct core_dc *core_dc = NULL; + struct core_freesync *core_freesync = NULL; +@@ -322,7 +322,7 @@ bool mod_freesync_add_stream(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_remove_stream(struct mod_freesync *mod_freesync, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + int i = 0; + struct core_freesync *core_freesync = NULL; +@@ -344,7 +344,7 @@ bool mod_freesync_remove_stream(struct mod_freesync *mod_freesync, + } + + static void update_stream_freesync_context(struct core_freesync *core_freesync, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + unsigned int index; + struct freesync_context *ctx; +@@ -368,7 +368,7 @@ static void update_stream_freesync_context(struct core_freesync *core_freesync, + } + + static void update_stream(struct core_freesync *core_freesync, +- struct dc_stream *stream) ++ struct dc_stream_state *stream) + { + unsigned int index = map_index_from_stream(core_freesync, stream); + if (core_freesync->map[index].caps->supported) { +@@ -378,7 +378,7 @@ static void update_stream(struct core_freesync *core_freesync, + } + + static void calc_freesync_range(struct core_freesync *core_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct freesync_state *state, + unsigned int min_refresh_in_uhz, + unsigned int max_refresh_in_uhz) +@@ -452,7 +452,7 @@ static void calc_freesync_range(struct core_freesync *core_freesync, + min_frame_duration_in_ns) / 2000; + } + +-static void calc_v_total_from_duration(struct dc_stream *stream, ++static void calc_v_total_from_duration(struct dc_stream_state *stream, + unsigned int duration_in_ns, int *v_total_nominal) + { + *v_total_nominal = div64_u64(div64_u64(((unsigned long long)( +@@ -461,7 +461,7 @@ static void calc_v_total_from_duration(struct dc_stream *stream, + } + + static void calc_v_total_for_static_ramp(struct core_freesync *core_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int index, int *v_total) + { + unsigned int frame_duration = 0; +@@ -557,7 +557,7 @@ static void reset_freesync_state_variables(struct freesync_state* state) + * Sets freesync mode on a stream depending on current freesync state. + */ + static bool set_freesync_on_streams(struct core_freesync *core_freesync, +- struct dc_stream **streams, int num_streams) ++ struct dc_stream_state **streams, int num_streams) + { + int v_total_nominal = 0, v_total_min = 0, v_total_max = 0; + unsigned int stream_idx, map_index = 0; +@@ -729,7 +729,7 @@ static void set_static_ramp_variables(struct core_freesync *core_freesync, + } + + void mod_freesync_handle_v_update(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams) ++ struct dc_stream_state **streams, int num_streams) + { + unsigned int index, v_total, inserted_frame_v_total = 0; + unsigned int min_frame_duration_in_ns, vmax, vmin = 0; +@@ -839,7 +839,7 @@ void mod_freesync_handle_v_update(struct mod_freesync *mod_freesync, + } + + void mod_freesync_update_state(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + struct mod_freesync_params *freesync_params) + { + bool freesync_program_required = false; +@@ -929,7 +929,7 @@ void mod_freesync_update_state(struct mod_freesync *mod_freesync, + + + bool mod_freesync_get_state(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct mod_freesync_params *freesync_params) + { + unsigned int index = 0; +@@ -965,7 +965,7 @@ bool mod_freesync_get_state(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_set_user_enable(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + struct mod_freesync_user_enable *user_enable) + { + unsigned int stream_index, map_index; +@@ -1017,7 +1017,7 @@ bool mod_freesync_set_user_enable(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_get_user_enable(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct mod_freesync_user_enable *user_enable) + { + unsigned int index = 0; +@@ -1035,7 +1035,7 @@ bool mod_freesync_get_user_enable(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_get_static_ramp_active(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + bool *is_ramp_active) + { + unsigned int index = 0; +@@ -1054,7 +1054,7 @@ bool mod_freesync_get_static_ramp_active(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_override_min_max(struct mod_freesync *mod_freesync, +- struct dc_stream *streams, ++ struct dc_stream_state *streams, + unsigned int min_refresh, + unsigned int max_refresh, + struct mod_freesync_caps *caps) +@@ -1107,7 +1107,7 @@ bool mod_freesync_override_min_max(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_get_min_max(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *min_refresh, + unsigned int *max_refresh) + { +@@ -1129,7 +1129,7 @@ bool mod_freesync_get_min_max(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_get_vmin_vmax(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *vmin, + unsigned int *vmax) + { +@@ -1151,7 +1151,7 @@ bool mod_freesync_get_vmin_vmax(struct mod_freesync *mod_freesync, + } + + bool mod_freesync_get_v_position(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *nom_v_pos, + unsigned int *v_pos) + { +@@ -1179,7 +1179,7 @@ bool mod_freesync_get_v_position(struct mod_freesync *mod_freesync, + } + + void mod_freesync_notify_mode_change(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams) ++ struct dc_stream_state **streams, int num_streams) + { + unsigned int stream_index, map_index; + struct freesync_state *state; +@@ -1239,7 +1239,7 @@ void mod_freesync_notify_mode_change(struct mod_freesync *mod_freesync, + * is required, depending on the times calculated + */ + static void update_timestamps(struct core_freesync *core_freesync, +- const struct dc_stream *stream, unsigned int map_index, ++ const struct dc_stream_state *stream, unsigned int map_index, + unsigned int last_render_time_in_us) + { + struct freesync_state *state = &core_freesync->map[map_index].state; +@@ -1304,7 +1304,7 @@ static void update_timestamps(struct core_freesync *core_freesync, + } + + static void apply_below_the_range(struct core_freesync *core_freesync, +- struct dc_stream *stream, unsigned int map_index, ++ struct dc_stream_state *stream, unsigned int map_index, + unsigned int last_render_time_in_us) + { + unsigned int inserted_frame_duration_in_us = 0; +@@ -1403,7 +1403,7 @@ static void apply_below_the_range(struct core_freesync *core_freesync, + } + + static void apply_fixed_refresh(struct core_freesync *core_freesync, +- struct dc_stream *stream, unsigned int map_index) ++ struct dc_stream_state *stream, unsigned int map_index) + { + unsigned int vmin = 0, vmax = 0; + struct freesync_state *state = &core_freesync->map[map_index].state; +@@ -1434,7 +1434,7 @@ static void apply_fixed_refresh(struct core_freesync *core_freesync, + } + + void mod_freesync_pre_update_plane_addresses(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + unsigned int curr_time_stamp_in_us) + { + unsigned int stream_index, map_index, last_render_time_in_us = 0; +diff --git a/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h b/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h +index 2b9d451..84b5342 100644 +--- a/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h ++++ b/drivers/gpu/drm/amd/display/modules/inc/mod_freesync.h +@@ -101,67 +101,67 @@ struct mod_freesync_params { + * Add stream to be tracked by module + */ + bool mod_freesync_add_stream(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, struct mod_freesync_caps *caps); ++ struct dc_stream_state *stream, struct mod_freesync_caps *caps); + + /* + * Remove stream to be tracked by module + */ + bool mod_freesync_remove_stream(struct mod_freesync *mod_freesync, +- struct dc_stream *stream); ++ struct dc_stream_state *stream); + + /* + * Update the freesync state flags for each display and program + * freesync accordingly + */ + void mod_freesync_update_state(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + struct mod_freesync_params *freesync_params); + + bool mod_freesync_get_state(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct mod_freesync_params *freesync_params); + + bool mod_freesync_set_user_enable(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + struct mod_freesync_user_enable *user_enable); + + bool mod_freesync_get_user_enable(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + struct mod_freesync_user_enable *user_enable); + + bool mod_freesync_get_static_ramp_active(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + bool *is_ramp_active); + + bool mod_freesync_override_min_max(struct mod_freesync *mod_freesync, +- struct dc_stream *streams, ++ struct dc_stream_state *streams, + unsigned int min_refresh, + unsigned int max_refresh, + struct mod_freesync_caps *caps); + + bool mod_freesync_get_min_max(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *min_refresh, + unsigned int *max_refresh); + + bool mod_freesync_get_vmin_vmax(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *vmin, + unsigned int *vmax); + + bool mod_freesync_get_v_position(struct mod_freesync *mod_freesync, +- struct dc_stream *stream, ++ struct dc_stream_state *stream, + unsigned int *nom_v_pos, + unsigned int *v_pos); + + void mod_freesync_handle_v_update(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams); ++ struct dc_stream_state **streams, int num_streams); + + void mod_freesync_notify_mode_change(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams); ++ struct dc_stream_state **streams, int num_streams); + + void mod_freesync_pre_update_plane_addresses(struct mod_freesync *mod_freesync, +- struct dc_stream **streams, int num_streams, ++ struct dc_stream_state **streams, int num_streams, + unsigned int curr_time_stamp); + + #endif +-- +2.7.4 + |