mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-22 00:40:03 +00:00
drm/amd/display: Use PSR version selected during set_psr_caps
[Why] If the DPCD caps specifies a PSR version newer than PSR_VERSION_1 then we fallback to using PSR_VERSION_1 in amdgpu_dm_set_psr_caps. This gets overriden with the raw DPCD value in amdgpu_dm_link_setup_psr, which can result in DMCUB hanging if we pass in an unsupported PSR version number. [How] Fix the hang by using link->psr_settings.psr_version directly during amdgpu_dm_link_setup_psr. Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Reviewed-by: Anthony Koo <Anthony.Koo@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
87e298d6e3
commit
b80ddeb29d
1 changed files with 2 additions and 4 deletions
|
@ -149,10 +149,8 @@ bool amdgpu_dm_link_setup_psr(struct dc_stream_state *stream)
|
||||||
|
|
||||||
link = stream->link;
|
link = stream->link;
|
||||||
|
|
||||||
psr_config.psr_version = link->dpcd_caps.psr_caps.psr_version;
|
if (link->psr_settings.psr_version != DC_PSR_VERSION_UNSUPPORTED) {
|
||||||
|
psr_config.psr_version = link->psr_settings.psr_version;
|
||||||
if (psr_config.psr_version > 0) {
|
|
||||||
psr_config.psr_exit_link_training_required = 0x1;
|
|
||||||
psr_config.psr_frame_capture_indication_req = 0;
|
psr_config.psr_frame_capture_indication_req = 0;
|
||||||
psr_config.psr_rfb_setup_time = 0x37;
|
psr_config.psr_rfb_setup_time = 0x37;
|
||||||
psr_config.psr_sdp_transmit_line_num_deadline = 0x20;
|
psr_config.psr_sdp_transmit_line_num_deadline = 0x20;
|
||||||
|
|
Loading…
Reference in a new issue