1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/gpu/drm/amd/display/dc/link/protocols
Ilya Bakoulin 2faa3653d6 drm/amd/display: Work around bad DPCD state on link loss
[Why]
This display doesn't properly indicate link loss through DPCD bits such
as CR_DONE / CHANNEL_EQ_DONE / SYMBOL_LOCKED / INTERLANE_ALIGN_DONE,
which all remain set.

In addition, DPCD200Eh doesn't match the value of DPCD204h in all cases.

For these reasons, we can miss re-training the link, since we don't
properly detect link loss with this display.

[Why]
Add display-specific workaround to read DPCD204h, so that we can detect
link loss based on 128b132b-specific status bits in this register.

Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: Wenjing Liu <wenjing.liu@amd.com>
Acked-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Signed-off-by: Ilya Bakoulin <ilya.bakoulin@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2023-06-30 13:11:35 -04:00
..
link_ddc.c drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_ddc.h drm/amd/display: convert link.h functions to function pointer style 2023-03-14 15:35:03 -04:00
link_dp_capability.c drm/amd/display: Clean FPGA code in dc 2023-06-09 10:44:11 -04:00
link_dp_capability.h drm/amd/display: convert link.h functions to function pointer style 2023-03-14 15:35:03 -04:00
link_dp_dpia.c drm/amd/display: refactor dmub commands into single function 2023-04-18 16:28:52 -04:00
link_dp_dpia.h drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_dpia_bw.c drm/amd/display: Add function pointer for validate bw usb4 2023-03-22 00:59:45 -04:00
link_dp_dpia_bw.h drm/amd/display: Add function pointer for validate bw usb4 2023-03-22 00:59:45 -04:00
link_dp_irq_handler.c drm/amd/display: Work around bad DPCD state on link loss 2023-06-30 13:11:35 -04:00
link_dp_irq_handler.h drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_phy.c drm/amd/display: replace all dc_link function call in link with link functions 2023-03-07 14:22:40 -05:00
link_dp_phy.h drm/amd/display: convert link.h functions to function pointer style 2023-03-14 15:35:03 -04:00
link_dp_training.c drm/amd/display: lower dp link training message level 2023-06-09 10:42:39 -04:00
link_dp_training.h drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_training_8b_10b.c drm/amd/display: Add logging when DP link training Channel EQ is Successful 2023-06-09 09:27:14 -04:00
link_dp_training_8b_10b.h drm/amd/display: create accessories, hwss and protocols sub folders in link 2023-01-24 13:26:25 -05:00
link_dp_training_128b_132b.c drm/amd/display: Add logging when DP link training Channel EQ is Successful 2023-06-09 09:27:14 -04:00
link_dp_training_128b_132b.h drm/amd/display: create accessories, hwss and protocols sub folders in link 2023-01-24 13:26:25 -05:00
link_dp_training_auxless.c drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_training_auxless.h drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_training_dpia.c drm/amd/display: Add logging when DP link training Clock recovery is Successful 2023-04-14 13:47:49 -04:00
link_dp_training_dpia.h drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_dp_training_fixed_vs_pe_retimer.c drm/amd/display: Keep disable aux-i delay as 0 2023-04-24 18:36:46 -04:00
link_dp_training_fixed_vs_pe_retimer.h drm/amd/display: Improve robustness of FIXED_VS link training at DP1 rates 2023-04-11 18:03:43 -04:00
link_dpcd.c drm/amd/display: create accessories, hwss and protocols sub folders in link 2023-01-24 13:26:25 -05:00
link_dpcd.h drm/amd/display: create accessories, hwss and protocols sub folders in link 2023-01-24 13:26:25 -05:00
link_edp_panel_control.c drm/amd/display: Apply correct panel mode when reinitializing hardware 2023-04-18 16:28:53 -04:00
link_edp_panel_control.h drm/amd/display: convert link.h functions to function pointer style 2023-03-14 15:35:03 -04:00
link_hpd.c drm/amd/display: move dc_link functions in protocols folder to dc_link_exports 2023-03-07 14:22:40 -05:00
link_hpd.h drm/amd/display: convert link.h functions to function pointer style 2023-03-14 15:35:03 -04:00