diff options
author | Jonathan Gray <jsg@cvs.openbsd.org> | 2024-09-12 23:31:08 +0000 |
---|---|---|
committer | Jonathan Gray <jsg@cvs.openbsd.org> | 2024-09-12 23:31:08 +0000 |
commit | 1b3b8f7af3f7aff1a07348e74ede98a19594e3a1 (patch) | |
tree | 43295951d7e48b41d1aba0fa886709c26a6609bc /sys | |
parent | 902fdf0ba2cd47611b579069d418bc35c8208c0a (diff) |
drm/amd/display: Check HDCP returned status
From Alex Hung
1bd1fe1109fcd9213494283b01d9421f58e0b6c5 in linux-6.6.y/6.6.51
5d93060d430b359e16e7c555c8f151ead1ac614b in mainline linux
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/pci/drm/amd/display/modules/hdcp/hdcp1_execution.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/sys/dev/pci/drm/amd/display/modules/hdcp/hdcp1_execution.c b/sys/dev/pci/drm/amd/display/modules/hdcp/hdcp1_execution.c index 1ddb4f5eac8..93c0455766d 100644 --- a/sys/dev/pci/drm/amd/display/modules/hdcp/hdcp1_execution.c +++ b/sys/dev/pci/drm/amd/display/modules/hdcp/hdcp1_execution.c @@ -433,17 +433,20 @@ static enum mod_hdcp_status authenticated_dp(struct mod_hdcp *hdcp, } if (status == MOD_HDCP_STATUS_SUCCESS) - mod_hdcp_execute_and_set(mod_hdcp_read_bstatus, + if (!mod_hdcp_execute_and_set(mod_hdcp_read_bstatus, &input->bstatus_read, &status, - hdcp, "bstatus_read"); + hdcp, "bstatus_read")) + goto out; if (status == MOD_HDCP_STATUS_SUCCESS) - mod_hdcp_execute_and_set(check_link_integrity_dp, + if (!mod_hdcp_execute_and_set(check_link_integrity_dp, &input->link_integrity_check, &status, - hdcp, "link_integrity_check"); + hdcp, "link_integrity_check")) + goto out; if (status == MOD_HDCP_STATUS_SUCCESS) - mod_hdcp_execute_and_set(check_no_reauthentication_request_dp, + if (!mod_hdcp_execute_and_set(check_no_reauthentication_request_dp, &input->reauth_request_check, &status, - hdcp, "reauth_request_check"); + hdcp, "reauth_request_check")) + goto out; out: return status; } |