diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/0976-drm-amd-display-Fix-MST-dp_blank-REG_WAIT-timeout.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/0976-drm-amd-display-Fix-MST-dp_blank-REG_WAIT-timeout.patch | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/0976-drm-amd-display-Fix-MST-dp_blank-REG_WAIT-timeout.patch b/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/0976-drm-amd-display-Fix-MST-dp_blank-REG_WAIT-timeout.patch new file mode 100644 index 00000000..ae218057 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux-4.19/linux-yocto-4.19.8/0976-drm-amd-display-Fix-MST-dp_blank-REG_WAIT-timeout.patch @@ -0,0 +1,71 @@ +From 9f34f0483d5a463be0c36313deffe9e5b8893bab Mon Sep 17 00:00:00 2001 +From: "Jerry (Fangzhi) Zuo" <Jerry.Zuo@amd.com> +Date: Mon, 17 Dec 2018 10:32:22 -0500 +Subject: [PATCH 0976/2940] drm/amd/display: Fix MST dp_blank REG_WAIT timeout + +Need to blank stream before deallocate MST payload. + +[drm:generic_reg_wait [amdgpu]] *ERROR* REG_WAIT timeout 10us * 3000 tries - dce110_stream_encoder_dp_blank line:944 +------------[ cut here ]------------ +WARNING: CPU: 0 PID: 2201 at /var/lib/dkms/amdgpu/18.50-690240/build/amd/amdgpu/../display/dc/dc_helper.c:249 generic_reg_wait+0xe7/0x160 [amdgpu] +Call Trace: + dce110_stream_encoder_dp_blank+0x11c/0x180 [amdgpu] + core_link_disable_stream+0x40/0x230 [amdgpu] + ? generic_reg_update_ex+0xdb/0x130 [amdgpu] + dce110_reset_hw_ctx_wrap+0xb7/0x1f0 [amdgpu] + dce110_apply_ctx_to_hw+0x30/0x430 [amdgpu] + ? dce110_apply_ctx_for_surface+0x206/0x260 [amdgpu] + dc_commit_state+0x2ba/0x4d0 [amdgpu] + amdgpu_dm_atomic_commit_tail+0x297/0xd70 [amdgpu] + ? amdgpu_bo_pin_restricted+0x58/0x260 [amdgpu] + ? wait_for_completion_timeout+0x1f/0x120 + ? wait_for_completion_interruptible+0x1c/0x160 + commit_tail+0x3d/0x60 [drm_kms_helper] + drm_atomic_helper_commit+0xf6/0x100 [drm_kms_helper] + drm_atomic_connector_commit_dpms+0xe5/0xf0 [drm] + drm_mode_obj_set_property_ioctl+0x14f/0x250 [drm] + drm_mode_connector_property_set_ioctl+0x2e/0x40 [drm] + drm_ioctl+0x1e0/0x430 [drm] + ? drm_mode_connector_set_obj_prop+0x70/0x70 [drm] + ? ep_read_events_proc+0xb0/0xb0 + ? ep_scan_ready_list.constprop.18+0x1e6/0x1f0 + ? timerqueue_add+0x52/0x80 + amdgpu_drm_ioctl+0x49/0x80 [amdgpu] + do_vfs_ioctl+0x90/0x5f0 + SyS_ioctl+0x74/0x80 + do_syscall_64+0x74/0x140 + entry_SYSCALL_64_after_hwframe+0x3d/0xa2 +---[ end trace 3ed7b77a97d60f72 ]--- + +Signed-off-by: Jerry (Fangzhi) Zuo <Jerry.Zuo@amd.com> +Reviewed-by: Hersen Wu <hersenxs.wu@amd.com> +Acked-by: Harry Wentland <harry.wentland@amd.com> +Acked-by: Alex Deucher <alexander.deucher@amd.com> +Tested-by: Lyude Paul <lyude@redhat.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +Cc: stable@vger.kernel.org +--- + drivers/gpu/drm/amd/display/dc/core/dc_link.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +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 fb6f7ec13eaf..a44d5d701f84 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c +@@ -2650,11 +2650,11 @@ void core_link_disable_stream(struct pipe_ctx *pipe_ctx, int option) + { + struct dc *core_dc = pipe_ctx->stream->ctx->dc; + ++ core_dc->hwss.blank_stream(pipe_ctx); ++ + if (pipe_ctx->stream->signal == SIGNAL_TYPE_DISPLAY_PORT_MST) + deallocate_mst_payload(pipe_ctx); + +- core_dc->hwss.blank_stream(pipe_ctx); +- + core_dc->hwss.disable_stream(pipe_ctx, option); + + disable_link(pipe_ctx->stream->sink->link, pipe_ctx->stream->signal); +-- +2.17.1 + |