mirror_ubuntu-kernels/drivers/gpu/drm/amd
Wenjing Liu cc67aae1e3 drm/amd/display: support proper mst payload removal when link is not in mst mode in dc
[why]
When user unplugs mst hubs, the current code will forcefully zero
entire mst payload allocation table structure stored in link before we
deallocate actual payload when disabling stream.

During the first disable stream sequence, we will use current mst
payload allocation table to determine if link should be turned off.
Because we zero out it before we are disabling stream, the payload
allocation table stored in link doesn't represent the actual allocation status,
so we turn off link at the first disable stream without waiting until all
streams' payloads have been deallocated. This avoilates the designed
deallocation sequence and caused system hang in DP2 scenario.

[how]
Remove payload during deallocation and never zero payload allocation structure
without actually deallocating payload.

Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Wayne Lin <wayne.lin@amd.com>
Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-09-19 15:12:16 -04:00
..
acp
amdgpu drm/amdgpu: add MES and MES-KIQ version in debugfs 2022-09-19 15:10:04 -04:00
amdkfd drm/amdkfd: Fix spelling mistake "detroyed" -> "destroyed" 2022-09-19 15:07:46 -04:00
display drm/amd/display: support proper mst payload removal when link is not in mst mode in dc 2022-09-19 15:12:16 -04:00
include drm/amd/pm:add new gpu_metrics_v2_3 to acquire average temperature info 2022-09-14 12:38:41 -04:00
pm drm/amd/pm:add new gpu_metrics_v2_3 to acquire average temperature info 2022-09-14 12:38:41 -04:00