]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/amd/display: Enable HDCP 2.2
authorBhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Tue, 23 Jul 2019 15:25:10 +0000 (11:25 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Nov 2019 15:12:53 +0000 (10:12 -0500)
[Why]
HDCP 2.2 was disabled, we need to enable it

[How]
-Update display topology to support 2.2
-Unset hdcp2.disable in update_config
-Change logic of event_update_property, now we set the property to be
ENABLED for any level of encryption (2.2 or 1.4).

Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c

index 77181ddf6c8e3bb3dfb9b3b5845d1ab301be7e74..970f2d58c6dc39b27eee6d1176bfead71fccc85f 100644 (file)
@@ -190,7 +190,7 @@ static void event_property_update(struct work_struct *work)
                }
        }
 
-       if (hdcp_work->encryption_status == MOD_HDCP_ENCRYPTION_STATUS_HDCP1_ON)
+       if (hdcp_work->encryption_status != MOD_HDCP_ENCRYPTION_STATUS_HDCP_OFF)
                drm_hdcp_update_content_protection(&aconnector->base, DRM_MODE_CONTENT_PROTECTION_ENABLED);
        else
                drm_hdcp_update_content_protection(&aconnector->base, DRM_MODE_CONTENT_PROTECTION_DESIRED);
@@ -294,7 +294,6 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
        link->dig_be = config->link_enc_inst;
        link->ddc_line = aconnector->dc_link->ddc_hw_inst + 1;
        link->dp.rev = aconnector->dc_link->dpcd_caps.dpcd_rev.raw;
-       link->adjust.hdcp2.disable = 1;
 
 }
 
index a365cf00bc4c8f21cced54122ceb00ae35915701..a9511612f4261c6ef44dc3d0f356cc2cf62068eb 100644 (file)
@@ -109,7 +109,7 @@ enum mod_hdcp_status mod_hdcp_add_display_topology(struct mod_hdcp *hdcp)
                        dtm_cmd->dtm_in_message.topology_update_v2.dig_fe = display->dig_fe;
                        dtm_cmd->dtm_in_message.topology_update_v2.dp_mst_vcid = display->vc_id;
                        dtm_cmd->dtm_in_message.topology_update_v2.max_hdcp_supported_version =
-                               TA_DTM_HDCP_VERSION_MAX_SUPPORTED__1_x;
+                               TA_DTM_HDCP_VERSION_MAX_SUPPORTED__2_2;
                        dtm_cmd->dtm_status = TA_DTM_STATUS__GENERIC_FAILURE;
 
                        psp_dtm_invoke(psp, dtm_cmd->cmd_id);