[PATCH v5 09/40] drm/i915: Schedule hdcp_check_link in _intel_hdcp_enable
Sean Paul
seanpaul at chromium.org
Mon Jul 9 20:34:11 UTC 2018
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 at intel.com>
> Reviewed-by: Uma Shankar <uma.shankar at intel.com>
> ---
> 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 at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Sean Paul, Software Engineer, Google / Chromium OS
More information about the dri-devel
mailing list