Re: [PATCH 37/43] drm/i915: Initialize HDCP2.2 and its MEI interface

Ramalingam C
2018-02-14T14:51:25Z

On Wednesday 14 February 2018 08:15 PM, Chris Wilson wrote:
> Quoting Ramalingam C (2018-02-14 14:13:52)
>> Implements the init and exit for hdcp2.2 support. This includes the
>> mei interface initialization also.
>>
>> Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
>> ---
>> +static int intel_hdcp2_init(struct intel_hdcp *hdcp,
>> + const struct intel_hdcp2_shim *shim)
>> {
>> + struct intel_connector *connector = hdcp->connector;
>> + struct drm_i915_private *dev_priv = to_i915(connector->base.dev);
>> int ret;
>> +
>> + if (INTEL_GEN(dev_priv) < 10 && !IS_GEMINILAKE(dev_priv) &&
>> + !IS_KABYLAKE(dev_priv))
>> + return -EINVAL;
>> +
>> + if (!dev_priv->mei_cldev && !dev_priv->mei_ref_cnt) {
>> + ret = mei_hdcp_cldev_get_reference((void *)dev_priv,
>> + &dev_priv->mei_cldev,
>> + intel_mei_cldev_reference_notify);
>> + if (ret < 0)
>> + return ret;
>> + }
>> +
>> + dev_priv->mei_ref_cnt++;
> So this is more or less unprotected? As there need not be any
> serialisation between the construction of two connectors.
> -Chris
yes. sorry for missing it. I will address it. Might need a lock in
I915_priv.

-Ram