Hello Suraj, > -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of > Suraj Kandpal > Sent: Thursday, May 18, 2023 12:06 PM > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Cc: Nikula, Jani <jani.nikula@xxxxxxxxx>; Winkler, Tomas > <tomas.winkler@xxxxxxxxx> > Subject: [PATCH 3/3] drm/i915/hdcp: Rename comp_mutex to > hdcp_mutex > > Rename comp_mutex to hdcp_mutex as after MTL we use gsc cs to enable > hdcp hence this mutex protects not only hdcp component we add to mei. > Nit: the commit message could be better framed. Other than that LGTM Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx> > Cc: Jani Nikula <jani.nikula@xxxxxxxxx> > Cc: Ankit Nautiyal <ankit.k.nautiyal@xxxxxxxxx> > Signed-off-by: Suraj Kandpal <suraj.kandpal@xxxxxxxxx> > --- > .../gpu/drm/i915/display/intel_display_core.h | 4 +- > drivers/gpu/drm/i915/display/intel_hdcp.c | 94 +++++++++---------- > drivers/gpu/drm/i915/display/intel_hdcp_gsc.c | 4 +- > drivers/gpu/drm/i915/i915_driver.c | 2 +- > 4 files changed, 52 insertions(+), 52 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h > b/drivers/gpu/drm/i915/display/intel_display_core.h > index 57f76321a393..e853ca3b72ed 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_core.h > +++ b/drivers/gpu/drm/i915/display/intel_display_core.h > @@ -404,8 +404,8 @@ struct intel_display { > * this is only populated post Meteorlake > */ > struct intel_hdcp_gsc_message *hdcp_message; > - /* Mutex to protect the above hdcp component related > values. */ > - struct mutex comp_mutex; > + /* Mutex to protect the above hdcp related values. */ > + struct mutex hdcp_mutex; > } hdcp; > > struct { > diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c > b/drivers/gpu/drm/i915/display/intel_hdcp.c > index 7d43845d5157..3413455df36e 100644 > --- a/drivers/gpu/drm/i915/display/intel_hdcp.c > +++ b/drivers/gpu/drm/i915/display/intel_hdcp.c > @@ -182,12 +182,12 @@ bool intel_hdcp2_capable(struct intel_connector > *connector) > } > > /* MEI/GSC interface is solid depending on which is used */ > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > if (!i915->display.hdcp.comp_added || !i915->display.hdcp.arbiter) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return false; > } > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > /* Sink's capability for HDCP2.2 */ > hdcp->shim->hdcp_2_2_capable(dig_port, &capable); @@ -1117,11 > +1117,11 @@ hdcp2_prepare_ake_init(struct intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1129,7 +1129,7 @@ hdcp2_prepare_ake_init(struct intel_connector > *connector, > if (ret) > drm_dbg_kms(&i915->drm, "Prepare_ake_init failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1147,11 +1147,11 @@ hdcp2_verify_rx_cert_prepare_km(struct > intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1161,7 +1161,7 @@ hdcp2_verify_rx_cert_prepare_km(struct > intel_connector *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, "Verify rx_cert failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1175,18 +1175,18 @@ static int hdcp2_verify_hprime(struct > intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > ret = arbiter->ops->verify_hprime(arbiter->hdcp_dev, data, > rx_hprime); > if (ret < 0) > drm_dbg_kms(&i915->drm, "Verify hprime failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1201,11 +1201,11 @@ hdcp2_store_pairing_info(struct > intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1213,7 +1213,7 @@ hdcp2_store_pairing_info(struct intel_connector > *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, "Store pairing info failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1228,11 +1228,11 @@ hdcp2_prepare_lc_init(struct intel_connector > *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1240,7 +1240,7 @@ hdcp2_prepare_lc_init(struct intel_connector > *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, "Prepare lc_init failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1255,11 +1255,11 @@ hdcp2_verify_lprime(struct intel_connector > *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1267,7 +1267,7 @@ hdcp2_verify_lprime(struct intel_connector > *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, "Verify L_Prime failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1281,11 +1281,11 @@ static int hdcp2_prepare_skey(struct > intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1293,7 +1293,7 @@ static int hdcp2_prepare_skey(struct > intel_connector *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, "Get session key failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1310,11 +1310,11 @@ hdcp2_verify_rep_topology_prepare_ack(struct > intel_connector *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1325,7 +1325,7 @@ hdcp2_verify_rep_topology_prepare_ack(struct > intel_connector *connector, > if (ret < 0) > drm_dbg_kms(&i915->drm, > "Verify rep topology failed. %d\n", ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1340,18 +1340,18 @@ hdcp2_verify_mprime(struct intel_connector > *connector, > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > ret = arbiter->ops->verify_mprime(arbiter->hdcp_dev, data, > stream_ready); > if (ret < 0) > drm_dbg_kms(&i915->drm, "Verify mprime failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1364,11 +1364,11 @@ static int hdcp2_authenticate_port(struct > intel_connector *connector) > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > @@ -1376,7 +1376,7 @@ static int hdcp2_authenticate_port(struct > intel_connector *connector) > if (ret < 0) > drm_dbg_kms(&i915->drm, "Enable hdcp auth failed. %d\n", > ret); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -1388,17 +1388,17 @@ static int hdcp2_close_session(struct > intel_connector *connector) > struct i915_hdcp_arbiter *arbiter; > int ret; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > arbiter = i915->display.hdcp.arbiter; > > if (!arbiter || !arbiter->ops) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return -EINVAL; > } > > ret = arbiter->ops->close_hdcp_session(arbiter->hdcp_dev, > &dig_port->hdcp_port_data); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > @@ -2108,10 +2108,10 @@ static int i915_hdcp_component_bind(struct > device *i915_kdev, > struct drm_i915_private *i915 = kdev_to_i915(i915_kdev); > > drm_dbg(&i915->drm, "I915 HDCP comp bind\n"); > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > i915->display.hdcp.arbiter = (struct i915_hdcp_arbiter *)data; > i915->display.hdcp.arbiter->hdcp_dev = mei_kdev; > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return 0; > } > @@ -2122,9 +2122,9 @@ static void i915_hdcp_component_unbind(struct > device *i915_kdev, > struct drm_i915_private *i915 = kdev_to_i915(i915_kdev); > > drm_dbg(&i915->drm, "I915 HDCP comp unbind\n"); > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > i915->display.hdcp.arbiter = NULL; > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > } > > static const struct component_ops i915_hdcp_ops = { @@ -2214,11 > +2214,11 @@ void intel_hdcp_component_init(struct drm_i915_private > *i915) > if (!is_hdcp2_supported(i915)) > return; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > drm_WARN_ON(&i915->drm, i915->display.hdcp.comp_added); > > i915->display.hdcp.comp_added = true; > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > if (intel_hdcp_gsc_cs_required(i915)) > ret = intel_hdcp_gsc_init(i915); > else > @@ -2228,9 +2228,9 @@ void intel_hdcp_component_init(struct > drm_i915_private *i915) > if (ret < 0) { > drm_dbg_kms(&i915->drm, "Failed at fw component > add(%d)\n", > ret); > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > i915->display.hdcp.comp_added = false; > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return; > } > } > @@ -2500,14 +2500,14 @@ void intel_hdcp_update_pipe(struct > intel_atomic_state *state, > > void intel_hdcp_component_fini(struct drm_i915_private *i915) { > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > if (!i915->display.hdcp.comp_added) { > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > return; > } > > i915->display.hdcp.comp_added = false; > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > if (intel_hdcp_gsc_cs_required(i915)) > intel_hdcp_gsc_fini(i915); > diff --git a/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c > b/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c > index 62e7bf0e1035..72573ce1d0e9 100644 > --- a/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c > +++ b/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c > @@ -704,12 +704,12 @@ int intel_hdcp_gsc_init(struct drm_i915_private > *i915) > if (!data) > return -ENOMEM; > > - mutex_lock(&i915->display.hdcp.comp_mutex); > + mutex_lock(&i915->display.hdcp.hdcp_mutex); > i915->display.hdcp.arbiter = data; > i915->display.hdcp.arbiter->hdcp_dev = i915->drm.dev; > i915->display.hdcp.arbiter->ops = &gsc_hdcp_ops; > ret = intel_hdcp_gsc_hdcp2_init(i915); > - mutex_unlock(&i915->display.hdcp.comp_mutex); > + mutex_unlock(&i915->display.hdcp.hdcp_mutex); > > return ret; > } > diff --git a/drivers/gpu/drm/i915/i915_driver.c > b/drivers/gpu/drm/i915/i915_driver.c > index 522733a89946..8ba87864bbd2 100644 > --- a/drivers/gpu/drm/i915/i915_driver.c > +++ b/drivers/gpu/drm/i915/i915_driver.c > @@ -222,7 +222,7 @@ static int i915_driver_early_probe(struct > drm_i915_private *dev_priv) > mutex_init(&dev_priv->display.audio.mutex); > mutex_init(&dev_priv->display.wm.wm_mutex); > mutex_init(&dev_priv->display.pps.mutex); > - mutex_init(&dev_priv->display.hdcp.comp_mutex); > + mutex_init(&dev_priv->display.hdcp.hdcp_mutex); > > i915_memcpy_init_early(dev_priv); > intel_runtime_pm_init_early(&dev_priv->runtime_pm); > -- > 2.25.1