mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
drm/amd/display: Refactor HPD IRQ error checking flow
[Why] HPD error status does not cover Replay desync error status while executing autotests and CTS tests. [How] Refactor the checking flow, reporting the HPD error based on different eDP feature. Reviewed-by: Robin Chen <robin.chen@amd.com> Signed-off-by: Leon Huang <Leon.Huang1@amd.com> Signed-off-by: Hamza Mahfooz <hamza.mahfooz@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
dfb214ec91
commit
d3a450aef2
|
|
@ -221,21 +221,11 @@ static void handle_hpd_irq_replay_sink(struct dc_link *link)
|
|||
&replay_error_status.raw,
|
||||
sizeof(replay_error_status.raw));
|
||||
|
||||
link->replay_settings.config.replay_error_status.bits.LINK_CRC_ERROR =
|
||||
replay_error_status.bits.LINK_CRC_ERROR;
|
||||
link->replay_settings.config.replay_error_status.bits.DESYNC_ERROR =
|
||||
replay_configuration.bits.DESYNC_ERROR_STATUS;
|
||||
link->replay_settings.config.replay_error_status.bits.STATE_TRANSITION_ERROR =
|
||||
replay_configuration.bits.STATE_TRANSITION_ERROR_STATUS;
|
||||
|
||||
if (link->replay_settings.config.replay_error_status.bits.LINK_CRC_ERROR ||
|
||||
link->replay_settings.config.replay_error_status.bits.DESYNC_ERROR ||
|
||||
link->replay_settings.config.replay_error_status.bits.STATE_TRANSITION_ERROR) {
|
||||
if (replay_error_status.bits.LINK_CRC_ERROR ||
|
||||
replay_configuration.bits.DESYNC_ERROR_STATUS ||
|
||||
replay_configuration.bits.STATE_TRANSITION_ERROR_STATUS) {
|
||||
bool allow_active;
|
||||
|
||||
if (link->replay_settings.config.replay_error_status.bits.DESYNC_ERROR)
|
||||
link->replay_settings.config.received_desync_error_hpd = 1;
|
||||
|
||||
if (link->replay_settings.config.force_disable_desync_error_check)
|
||||
return;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user