On Wed, Nov 02, 2022 at 09:07:03PM +0300, Dmitry Baryshkov wrote: > The functionality of drm_bridge_connector_enable_hpd() and > drm_bridge_connector_disable_hpd() is provided automatically by the > drm_kms_poll helpers. Stop calling these functions manually. I stumbled over this one when investigating a hotplug-related crash in the MSM DRM driver which this series prevents by moving hotplug notification enable to drm_kms_helper_poll_enable(). > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > --- > drivers/gpu/drm/msm/hdmi/hdmi.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/gpu/drm/msm/hdmi/hdmi.c b/drivers/gpu/drm/msm/hdmi/hdmi.c > index 93fe61b86967..a540c45d4fd3 100644 > --- a/drivers/gpu/drm/msm/hdmi/hdmi.c > +++ b/drivers/gpu/drm/msm/hdmi/hdmi.c > @@ -348,8 +348,6 @@ int msm_hdmi_modeset_init(struct hdmi *hdmi, > goto fail; > } > > - drm_bridge_connector_enable_hpd(hdmi->connector); > - > ret = msm_hdmi_hpd_enable(hdmi->bridge); > if (ret < 0) { > DRM_DEV_ERROR(&hdmi->pdev->dev, "failed to enable HPD: %d\n", ret); It looks like you are now enabling hotplug events before the DRM driver is ready to receive them (i.e. msm_hdmi_hpd_enable() is called before drm_bridge_connector_enable_hpd()). Could this not lead to missed events or is the state being setup correctly somewhere else? Shouldn't the call to msm_hdmi_hpd_enable() be moved to when HPD is enabled either way (e.g. by being converted to a hpd_enable callback)? Johan