On 18/05/2026 20:01, Jonas Karlman wrote: > With CEC phys addr invalidation moved away from the irq handler there is > no longer a need for cec_notifier_mutex, remove it. > > Reviewed-by: Neil Armstrong <[email protected]> > Tested-by: Diederik de Haas <[email protected]> # Rock64, RockPro64, > Quartz64-B > Signed-off-by: Jonas Karlman <[email protected]>
Acked-by: Hans Verkuil <[email protected]> Nice, I wondered why that mutex was there at all. Regards, Hans > --- > v7: No change > v6: Collect t-b tag > v5: No change, cec_notifier_conn_unregister() call moved > v4: No change > v3: No change > v2: Collect r-b tag > --- > drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 11 +---------- > 1 file changed, 1 insertion(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > index aae1b890167b..0dd4c823c60a 100644 > --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > @@ -189,7 +189,6 @@ struct dw_hdmi { > void (*enable_audio)(struct dw_hdmi *hdmi); > void (*disable_audio)(struct dw_hdmi *hdmi); > > - struct mutex cec_notifier_mutex; > struct cec_notifier *cec_notifier; > > hdmi_codec_plugged_cb plugged_cb; > @@ -2476,11 +2475,8 @@ dw_hdmi_connector_detect(struct drm_connector > *connector, bool force) > > status = dw_hdmi_detect(hdmi); > > - if (status == connector_status_disconnected) { > - mutex_lock(&hdmi->cec_notifier_mutex); > + if (status == connector_status_disconnected) > cec_notifier_phys_addr_invalidate(hdmi->cec_notifier); > - mutex_unlock(&hdmi->cec_notifier_mutex); > - } > > return status; > } > @@ -2542,10 +2538,8 @@ static void dw_hdmi_connector_destroy(struct > drm_connector *connector) > { > struct dw_hdmi *hdmi = container_of(connector, struct dw_hdmi, > connector); > > - mutex_lock(&hdmi->cec_notifier_mutex); > cec_notifier_conn_unregister(hdmi->cec_notifier); > hdmi->cec_notifier = NULL; > - mutex_unlock(&hdmi->cec_notifier_mutex); > > drm_connector_cleanup(connector); > drm_bridge_put(&hdmi->bridge); > @@ -2612,9 +2606,7 @@ static int dw_hdmi_connector_create(struct dw_hdmi > *hdmi) > if (!notifier) > return -ENOMEM; > > - mutex_lock(&hdmi->cec_notifier_mutex); > hdmi->cec_notifier = notifier; > - mutex_unlock(&hdmi->cec_notifier_mutex); > > return 0; > } > @@ -3323,7 +3315,6 @@ struct dw_hdmi *dw_hdmi_probe(struct platform_device > *pdev, > > mutex_init(&hdmi->mutex); > mutex_init(&hdmi->audio_mutex); > - mutex_init(&hdmi->cec_notifier_mutex); > spin_lock_init(&hdmi->audio_lock); > > ddc_node = of_parse_phandle(np, "ddc-i2c-bus", 0);
