Hi Dmitry, It looks like there are some issues with this patchset... :/ I just fetched the drm-tip and, with these patches included, the "Hot plug detection already enabled" warning is back for i.MX DCSS. After a short investigation, it seems that we end up calling drm_bridge_hpd_enable() from both drm_kms_helper_poll_init() and drm_fbdev_generic_setup(), hence the warning. There are drivers using the drm_bridge_connector API that also call drm_kms_helper_poll_init() followed by drm_fbdev_generic_setup(). So, they might experience the same behavior, unless I'm missing something... :/ Also, even if drm_fbdev_generic_setup() is not called in the driver initialization, the warning will still appear the first time the GETCONNECTOR ioctl is called, because that'll call drm_helper_probe_single_connector_modes() helper which will eventually call drm_bridge_hpd_enable(). Any idea? Cheers, Laurentiu On Wed, Nov 02, 2022 at 09:06:58PM +0300, Dmitry Baryshkov wrote: > From all the drivers using drm_bridge_connector only iMX/dcss and OMAP > DRM driver do a proper work of calling > drm_bridge_connector_en/disable_hpd() in right places. Rather than > teaching each and every driver how to properly handle > drm_bridge_connector's HPD, make that automatic. > > Add two additional drm_connector helper funcs: enable_hpd() and > disable_hpd(). Make drm_kms_helper_poll_* functions call them (as this > is the time where the drm_bridge_connector's functions are called by the > drivers too). > > Changes since v2: > - Fixed a typo in the commit message of the second patch. > > Changes since v1: > - Rebased on top of v6.1-rc1 > - Removed the drm_bridge_connector_enable_hpd() from > drm_bridge_connector_init() > - Removed extra underscore prefix from > drm_bridge_connector_en/disable_hpd() helpers > > Dmitry Baryshkov (7): > drm/poll-helper: merge drm_kms_helper_poll_disable() and _fini() > drm/probe-helper: enable and disable HPD on connectors > drm/bridge_connector: rely on drm_kms_helper_poll_* for HPD enablement > drm/imx/dcss: stop using drm_bridge_connector_en/disable_hpd() > drm/msm/hdmi: stop using drm_bridge_connector_en/disable_hpd() > drm/omap: stop using drm_bridge_connector_en/disable_hpd() > drm/bridge_connector: drop drm_bridge_connector_en/disable_hpd() > > drivers/gpu/drm/drm_bridge_connector.c | 27 +++------------- > drivers/gpu/drm/drm_probe_helper.c | 40 ++++++++++++++++++----- > drivers/gpu/drm/imx/dcss/dcss-dev.c | 4 --- > drivers/gpu/drm/imx/dcss/dcss-kms.c | 2 -- > drivers/gpu/drm/msm/hdmi/hdmi.c | 2 -- > drivers/gpu/drm/omapdrm/omap_drv.c | 41 ------------------------ > include/drm/drm_bridge_connector.h | 2 -- > include/drm/drm_modeset_helper_vtables.h | 22 +++++++++++++ > 8 files changed, 59 insertions(+), 81 deletions(-) > > -- > 2.35.1 >