]> git.baikalelectronics.ru Git - kernel.git/commitdiff
drm/amd/display: delay 100ms before restart after failing to read CP_IRQ
authorWenjing Liu <wenjing.liu@amd.com>
Mon, 17 May 2021 19:54:19 +0000 (15:54 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 8 Jun 2021 16:15:54 +0000 (12:15 -0400)
[why]
Some DPRX will issue CP_IRQ when user disconnects a display
that has been authenticated.
Since display is being disconnecting dpcd read will fail.
This will cause us to attempt HDCP retry on disconnection.
We are adding a 100ms delay before retry.
So we will only start retry if within 100ms there is no disconnection call
to HDCP module.

Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>
Acked-by: Stylon Wang <stylon.wang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c

index b0306ed6d6b485189d8291344624a1f5f37a0740..70cb230d8f56c17a187a5d57ce32b7c0ece67e8b 100644 (file)
@@ -564,7 +564,7 @@ enum mod_hdcp_status mod_hdcp_hdcp2_dp_transition(struct mod_hdcp *hdcp,
        case D2_A5_AUTHENTICATED:
                if (input->rxstatus_read == FAIL ||
                                input->reauth_request_check == FAIL) {
-                       fail_and_restart_in_ms(0, &status, output);
+                       fail_and_restart_in_ms(100, &status, output);
                        break;
                } else if (input->link_integrity_check_dp == FAIL) {
                        if (hdcp->connection.hdcp2_retry_count >= 1)