mirror_ubuntu-kernels/drivers/gpu/drm/amd/display/dc
Wayne Lin 3a0625813b drm/amd/display: Retry when fail reading lane status during LT
[Why]
In dp_get_lane_status_and_lane_adjust(), we call core_link_read_dpcd()
to get lane status but we ignore the return value of the function. If
there is problem with AUX and we eventually can only get partial data
from monitor, we might misuse the data to jude the link training result.
Which could have us trapped in the dc_link_dp_perform_link_training()
since we thought that we can still give a try on another link setting.

[How]
In dp_get_lane_status_and_lane_adjust(), take return value of
core_link_read_dpcd() into account. If we fail to read all requested
data, we treat lanes status as previous one and repeat LT steps again.

Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Agustin Gutierrez <agustin.gutierrez@amd.com>
Signed-off-by: Wayne Lin <Wayne.Lin@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-03-15 14:41:42 -04:00
..
basics Revert "drm/amd/display: Unblank hubp based on plane visibility" 2021-02-18 16:43:10 -05:00
bios drm/amd/display: Add DCN315 Command Table Helper 2022-02-18 14:07:01 -05:00
clk_mgr drm/amd/display: Fix compile error from TO_CLK_MGR_INTERNAL 2022-03-15 14:25:16 -04:00
core drm/amd/display: Retry when fail reading lane status during LT 2022-03-15 14:41:42 -04:00
dce drm/amd/display: Update engine ddc 2022-03-15 14:41:22 -04:00
dce60 drm/amd/display/dc/dce60/dce60_resource: Include our own header containing prototypes 2021-01-14 13:20:21 -05:00
dce80 drm/amd/display: Return last used DRR VTOTAL from DC 2021-06-08 12:20:12 -04:00
dce100 drm/amd/display/dc/dce100/dce100_resource: Include our own header containing prototypes 2021-01-14 13:20:20 -05:00
dce110 drm/amd/display: Program OPP before ODM 2022-03-04 12:43:02 -05:00
dce112 drm/amd/display: Use NULL instead of 0 2022-02-24 17:26:20 -05:00
dce120 drm/amd/display: Return last used DRR VTOTAL from DC 2021-06-08 12:20:12 -04:00
dcn10 drm/amd/display: Add pstate verification and recovery for DCN31 2022-03-15 14:33:57 -04:00
dcn20 drm/amd/display: move FPU-related code from dcn20 to dml folder 2022-03-15 14:25:16 -04:00
dcn21 drm/amd/display: move FPU operations from dcn21 to dml/dcn20 folder 2022-03-15 14:25:16 -04:00
dcn30 drm/amd/display: Add pstate verification and recovery for DCN31 2022-03-15 14:33:57 -04:00
dcn31 drm/amd/display: Add pstate verification and recovery for DCN31 2022-03-15 14:33:57 -04:00
dcn201 drm/amd/display: Add missing prototypes to dcn201_init 2022-02-23 14:03:20 -05:00
dcn301 drm/amd/display: Add pstate verification and recovery for DCN31 2022-03-15 14:33:57 -04:00
dcn302 drm/amdgpu: move dpcs_3_0_0 headers from dcn to dpcs 2022-02-07 18:03:50 -05:00
dcn303 drm/amd/display: move FPU associated DCN303 code to DML folder 2022-03-15 14:25:15 -04:00
dcn315 drm/amd/display: move FPU-related code from dcn20 to dml folder 2022-03-15 14:25:16 -04:00
dcn316 drm/amd/display: move FPU-related code from dcn20 to dml folder 2022-03-15 14:25:16 -04:00
dml drm/amd/display: Block zstate when more than one plane enabled 2022-03-15 14:41:28 -04:00
dsc drm/dp: Move public DisplayPort headers into dp/ 2022-01-17 11:25:44 +01:00
gpio drm/amd/display: Add DCN315 GPIO 2022-02-18 14:07:00 -05:00
hdcp drm/amd/display: Enforce DPCD Address ranges 2021-06-15 17:25:41 -04:00
inc drm/amd/display: Add pstate verification and recovery for DCN31 2022-03-15 14:33:57 -04:00
irq drm/amd/display: Turn functions into static 2022-02-24 17:26:25 -05:00
link drm/amd/display: Add link dp trace support 2022-03-15 14:25:15 -04:00
virtual drm/amd/display: move link_hwss to link folder and break down to files 2022-02-02 18:26:32 -05:00
dc_bios_types.h drm/amd/display: Interface for LTTPR interop 2021-04-09 16:48:25 -04:00
dc_ddc_types.h drm/amd/display: Support for DMUB AUX 2021-03-02 14:05:41 -05:00
dc_dmub_srv.c drm/amd/display: Wait for ACK for INBOX0 HW Lock 2021-11-17 16:58:11 -05:00
dc_dmub_srv.h drm/amd/display: Wait for ACK for INBOX0 HW Lock 2021-11-17 16:58:11 -05:00
dc_dp_types.h drm/amd/display: add cable ID support for usb c connector 2022-02-23 14:22:03 -05:00
dc_dsc.h drm/amd/display: move bpp range decision in decide dsc bw range function 2021-09-14 15:57:09 -04:00
dc_edid_parser.c drm/amd/display: Add Freesync HDMI support to DMCU 2021-02-02 12:11:41 -05:00
dc_edid_parser.h drm/amd/display: Add Freesync HDMI support to DMCU 2021-02-02 12:11:41 -05:00
dc_helper.c drm/amd/display: Support synchronized indirect reg access 2022-01-25 18:00:35 -05:00
dc_hw_types.h drm/amd/display: add dsc mst stream pbn log for debug 2022-02-16 17:12:00 -05:00
dc_link.h drm/amd/display: Add I2C escape to support query device exist. 2022-03-15 14:41:03 -04:00
dc_stat.h drm/amd/display: DMUB Outbound Interrupt Process-X86 2021-07-08 15:14:36 -04:00
dc_stream.h drm/amd/display: Add function to get the pipe from the stream context 2022-03-15 14:41:10 -04:00
dc_trace.h drm/amd/display: Add control mechanism for FPU utilization 2021-08-05 21:17:59 -04:00
dc_types.h drm/amd/display: Add new enum for EDID status 2022-03-15 14:41:34 -04:00
dc.h drm/amd/display: 3.2.176 2022-03-15 14:25:16 -04:00
dm_cp_psp.h drm/amd/display: unhard code link to phy idx mapping in dc link and clean up 2022-01-07 17:21:20 -05:00
dm_event_log.h
dm_helpers.h drm/amd/display: refine the EDID override 2022-03-04 13:03:29 -05:00
dm_pp_smu.h drm/amdgpu/pm: display vcn pp dpm (v4) 2021-05-21 10:31:55 -04:00
dm_services_types.h
dm_services.h
irq_types.h drm/amd/display: Fix for access for ddc pin and aux engine. 2021-10-06 15:52:48 -04:00
Makefile drm/amd/display: Add DCN315 blocks to Makefile 2022-02-18 14:07:01 -05:00
os_types.h drm/dp: Move public DisplayPort headers into dp/ 2022-01-17 11:25:44 +01:00