On Wed, Jun 27, 2018 at 02:09:58PM +0530, Ramalingam C wrote: > As a preparation for making the intel_hdcp_enable as common function > for both HDCP1.4 and HDCP2.2, HDCP1.4 check_link scheduling is moved > into _intel_hdcp_enable() function. > > v3: > No Changes. > v4: > Style fix. > v5: > No Change. > > Signed-off-by: Ramalingam C <ramalingam.c@xxxxxxxxx> > Reviewed-by: Uma Shankar <uma.shankar@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_hdcp.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c > index 769560591aa8..4bff74b3bed0 100644 > --- a/drivers/gpu/drm/i915/intel_hdcp.c > +++ b/drivers/gpu/drm/i915/intel_hdcp.c > @@ -688,7 +688,7 @@ static int _intel_hdcp_enable(struct intel_connector *connector) > ret = intel_hdcp_auth(conn_to_dig_port(connector), > hdcp->hdcp_shim); > if (!ret) > - return 0; > + break; > > DRM_DEBUG_KMS("HDCP Auth failure (%d)\n", ret); > > @@ -696,7 +696,13 @@ static int _intel_hdcp_enable(struct intel_connector *connector) > _intel_hdcp_disable(connector); > } > > - DRM_ERROR("HDCP authentication failed (%d tries/%d)\n", tries, ret); > + if (i != tries) > + schedule_delayed_work(&hdcp->hdcp_check_work, > + DRM_HDCP_CHECK_PERIOD_MS); At best, this results in a duplicate scheduling when called from intel_hdcp_check_link(). At worst, it schedules a check when it's not supposed to (see the condition in intel_hdcp_check_work). Sean > + else > + DRM_ERROR("HDCP authentication failed (%d tries/%d)\n", > + tries, ret); > + > return ret; > } > > @@ -790,8 +796,6 @@ int intel_hdcp_enable(struct intel_connector *connector) > > hdcp->hdcp_value = DRM_MODE_CONTENT_PROTECTION_ENABLED; > schedule_work(&hdcp->hdcp_prop_work); > - schedule_delayed_work(&hdcp->hdcp_check_work, > - DRM_HDCP_CHECK_PERIOD_MS); > out: > mutex_unlock(&hdcp->hdcp_mutex); > return ret; > -- > 2.7.4 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Sean Paul, Software Engineer, Google / Chromium OS _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel