Loading drivers/video/fbdev/msm/mdss_dp.c +4 −2 Original line number Diff line number Diff line Loading @@ -2599,8 +2599,10 @@ static void mdss_dp_process_attention(struct mdss_dp_drv_pdata *dp_drv) pr_debug("Attention: hpd_irq high\n"); if (dp_drv->power_on && dp_drv->hdcp.ops && dp_drv->hdcp.ops->cp_irq) dp_drv->hdcp.ops->cp_irq(dp_drv->hdcp.data); dp_drv->hdcp.ops->cp_irq) { if (!dp_drv->hdcp.ops->cp_irq(dp_drv->hdcp.data)) return; } if (!mdss_dp_process_hpd_irq_high(dp_drv)) return; Loading drivers/video/fbdev/msm/mdss_dp_hdcp2p2.c +17 −12 Original line number Diff line number Diff line Loading @@ -574,18 +574,6 @@ static void dp_hdcp2p2_link_work(struct kthread_work *work) cdata.context = ctrl->lib_ctx; ctrl->sink_rx_status = 0; rc = mdss_dp_aux_read_rx_status(ctrl->init_data.cb_data, &ctrl->sink_rx_status); if (rc) { pr_err("failed to read rx status\n"); cdata.cmd = HDCP_LIB_WKUP_CMD_LINK_FAILED; atomic_set(&ctrl->auth_state, HDCP_STATE_AUTH_FAIL); goto exit; } if (ctrl->sink_rx_status & ctrl->abort_mask) { if (ctrl->sink_rx_status & BIT(3)) pr_err("reauth_req set by sink\n"); Loading Loading @@ -636,6 +624,7 @@ static void dp_hdcp2p2_auth_work(struct kthread_work *work) static int dp_hdcp2p2_cp_irq(void *input) { int rc = 0; struct dp_hdcp2p2_ctrl *ctrl = input; if (!ctrl) { Loading @@ -643,9 +632,25 @@ static int dp_hdcp2p2_cp_irq(void *input) return -EINVAL; } ctrl->sink_rx_status = 0; rc = mdss_dp_aux_read_rx_status(ctrl->init_data.cb_data, &ctrl->sink_rx_status); if (rc) { pr_err("failed to read rx status\n"); goto error; } if (!ctrl->sink_rx_status) { pr_debug("not a hdcp 2.2 irq\n"); rc = -EINVAL; goto error; } queue_kthread_work(&ctrl->worker, &ctrl->link); return 0; error: return rc; } void dp_hdcp2p2_deinit(void *input) Loading drivers/video/fbdev/msm/mdss_dp_util.h +1 −0 Original line number Diff line number Diff line Loading @@ -185,6 +185,7 @@ #define DP_HDCP_RCVPORT_DATA6 (0x0C4) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_CTRL (0x024) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_DATA (0x028) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA0 (0x004) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA1 (0x008) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA7 (0x00C) Loading drivers/video/fbdev/msm/mdss_hdcp_1x.c +229 −116 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
drivers/video/fbdev/msm/mdss_dp.c +4 −2 Original line number Diff line number Diff line Loading @@ -2599,8 +2599,10 @@ static void mdss_dp_process_attention(struct mdss_dp_drv_pdata *dp_drv) pr_debug("Attention: hpd_irq high\n"); if (dp_drv->power_on && dp_drv->hdcp.ops && dp_drv->hdcp.ops->cp_irq) dp_drv->hdcp.ops->cp_irq(dp_drv->hdcp.data); dp_drv->hdcp.ops->cp_irq) { if (!dp_drv->hdcp.ops->cp_irq(dp_drv->hdcp.data)) return; } if (!mdss_dp_process_hpd_irq_high(dp_drv)) return; Loading
drivers/video/fbdev/msm/mdss_dp_hdcp2p2.c +17 −12 Original line number Diff line number Diff line Loading @@ -574,18 +574,6 @@ static void dp_hdcp2p2_link_work(struct kthread_work *work) cdata.context = ctrl->lib_ctx; ctrl->sink_rx_status = 0; rc = mdss_dp_aux_read_rx_status(ctrl->init_data.cb_data, &ctrl->sink_rx_status); if (rc) { pr_err("failed to read rx status\n"); cdata.cmd = HDCP_LIB_WKUP_CMD_LINK_FAILED; atomic_set(&ctrl->auth_state, HDCP_STATE_AUTH_FAIL); goto exit; } if (ctrl->sink_rx_status & ctrl->abort_mask) { if (ctrl->sink_rx_status & BIT(3)) pr_err("reauth_req set by sink\n"); Loading Loading @@ -636,6 +624,7 @@ static void dp_hdcp2p2_auth_work(struct kthread_work *work) static int dp_hdcp2p2_cp_irq(void *input) { int rc = 0; struct dp_hdcp2p2_ctrl *ctrl = input; if (!ctrl) { Loading @@ -643,9 +632,25 @@ static int dp_hdcp2p2_cp_irq(void *input) return -EINVAL; } ctrl->sink_rx_status = 0; rc = mdss_dp_aux_read_rx_status(ctrl->init_data.cb_data, &ctrl->sink_rx_status); if (rc) { pr_err("failed to read rx status\n"); goto error; } if (!ctrl->sink_rx_status) { pr_debug("not a hdcp 2.2 irq\n"); rc = -EINVAL; goto error; } queue_kthread_work(&ctrl->worker, &ctrl->link); return 0; error: return rc; } void dp_hdcp2p2_deinit(void *input) Loading
drivers/video/fbdev/msm/mdss_dp_util.h +1 −0 Original line number Diff line number Diff line Loading @@ -185,6 +185,7 @@ #define DP_HDCP_RCVPORT_DATA6 (0x0C4) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_CTRL (0x024) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_DATA (0x028) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA0 (0x004) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA1 (0x008) #define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA7 (0x00C) Loading
drivers/video/fbdev/msm/mdss_hdcp_1x.c +229 −116 File changed.Preview size limit exceeded, changes collapsed. Show changes