lkml.org 
[lkml]   [2020]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.6 063/129] drm/amd/display: Don't try hdcp1.4 when content_type is set to type1
    Date
    From: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>

    [ Upstream commit c2850c125d919efbb3a9ab46410d23912934f585 ]

    [Why]
    When content type property is set to 1. We should enable hdcp2.2 and if we cant
    then stop. Currently the way it works in DC is that if we fail hdcp2, we will
    try hdcp1 after.

    [How]
    Use link config to force disable hdcp1.4 when type1 is set.

    Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
    Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 8 ++++++--
    1 file changed, 6 insertions(+), 2 deletions(-)

    diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
    index 0acd3409dd6ce..3abeff7722e3d 100644
    --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
    +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
    @@ -113,10 +113,13 @@ void hdcp_update_display(struct hdcp_workqueue *hdcp_work,

    if (enable_encryption) {
    display->adjust.disable = 0;
    - if (content_type == DRM_MODE_HDCP_CONTENT_TYPE0)
    + if (content_type == DRM_MODE_HDCP_CONTENT_TYPE0) {
    + hdcp_w->link.adjust.hdcp1.disable = 0;
    hdcp_w->link.adjust.hdcp2.force_type = MOD_HDCP_FORCE_TYPE_0;
    - else if (content_type == DRM_MODE_HDCP_CONTENT_TYPE1)
    + } else if (content_type == DRM_MODE_HDCP_CONTENT_TYPE1) {
    + hdcp_w->link.adjust.hdcp1.disable = 1;
    hdcp_w->link.adjust.hdcp2.force_type = MOD_HDCP_FORCE_TYPE_1;
    + }

    schedule_delayed_work(&hdcp_w->property_validate_dwork,
    msecs_to_jiffies(DRM_HDCP_CHECK_PERIOD_MS));
    @@ -334,6 +337,7 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
    link->dp.rev = aconnector->dc_link->dpcd_caps.dpcd_rev.raw;
    display->adjust.disable = 1;
    link->adjust.auth_delay = 2;
    + link->adjust.hdcp1.disable = 0;

    hdcp_update_display(hdcp_work, link_index, aconnector, DRM_MODE_HDCP_CONTENT_TYPE0, false);
    }
    --
    2.20.1
    \
     
     \ /
      Last update: 2020-04-15 13:41    [W:4.058 / U:0.684 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site