drm/amd/display: DP HDCP Compliance 1A-08/09 tests fail
authorQingqing Zhuo <qingqing.zhuo@amd.com>
Sat, 23 Jan 2021 00:16:25 +0000 (19:16 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 9 Feb 2021 20:31:00 +0000 (15:31 -0500)
[Why]
Current implementation of mod_hdcp_hdcp2_validate_ake_cert()
does not process HDCP status message
TA_HDCP2_MSG_AUTHENTICATION_STATUS__SIGNATURE_CERTIFICAT_ERROR.
As a result, when there is a signature certificate error,
mod_hdcp_hdcp2_validate_ake_cert would return the default status,
which is success.

[How]
For all messages other than TA_HDCP2_MSG_AUTHENTICATION_STATUS__SUCCESS
and TA_HDCP2_MSG_AUTHENTICATION_STATUS__RECEIVERID_REVOKED, return status
as failure.

Signed-off-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Reviewed-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Acked-by: Anson Jacob <Anson.Jacob@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c

index b26ed64..904ce9b 100644 (file)
@@ -548,6 +548,8 @@ enum mod_hdcp_status mod_hdcp_hdcp2_validate_ake_cert(struct mod_hdcp *hdcp)
                           TA_HDCP2_MSG_AUTHENTICATION_STATUS__RECEIVERID_REVOKED) {
                        hdcp->connection.is_hdcp2_revoked = 1;
                        status = MOD_HDCP_STATUS_HDCP2_AKE_CERT_REVOKED;
+               }  else {
+                       status = MOD_HDCP_STATUS_HDCP2_VALIDATE_AKE_CERT_FAILURE;
                }
        }
        mutex_unlock(&psp->hdcp_context.mutex);