On Monday, January 19, 2026 6:21:40 PM Central European Standard Time Harry 
Wentland wrote:
> On 2026-01-18 08:03, Timur Kristóf wrote:
> > Analog connectors may be hot-plugged unlike other connector
> > types that don't support HPD.
> > 
> > Stop DRM from polling other connector types that don't
> > support HPD, such as eDP, LVDS, etc. These were wrongly
> > polled when analog connector support was added,
> > causing issues with the seamless boot process.
> > 
> > Fixes: c4f3f114e73c ("drm/amd/display: Poll analog connectors (v3)")
> > Signed-off-by: Timur Kristóf <[email protected]>
> > Reported-by: Matthew Schwartz <[email protected]>
> > ---
> > 
> >  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 10 ++++++++--
> >  1 file changed, 8 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
> > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c index
> > 0a2a3f233a0e..e7b0928bd3db 100644
> > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
> > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
> > @@ -915,13 +915,19 @@ void amdgpu_dm_hpd_init(struct amdgpu_device *adev)
> > 
> >             struct amdgpu_dm_connector *amdgpu_dm_connector;
> >             const struct dc_link *dc_link;
> > 
> > -           use_polling |= connector->polled != 
DRM_CONNECTOR_POLL_HPD;
> > -
> > 
> >             if (connector->connector_type == 
DRM_MODE_CONNECTOR_WRITEBACK)
> >             
> >                     continue;
> >             
> >             amdgpu_dm_connector = 
to_amdgpu_dm_connector(connector);
> > 
> > +           /*
> > +            * Analog connectors may be hot-plugged unlike other 
connector
> > +            * types that don't support HPD. Only poll analog 
connectors.
> > +            */
> > +           use_polling |=
> > +                   amdgpu_dm_connector->dc_link &&
> > +                   
dc_connector_supports_analog(amdgpu_dm_connector->dc_link->link_id.id)
> > ;
> 
> Why isn't the aconnector->base.polled assignment in
> amdgpu_dm_connector_init_helper doing the trick?
> 
> Harry

Hi Harry,

The issue is that checking "connector->polled != DRM_CONNECTOR_POLL_HPD" will 
also match connectors that don't support hotplugging, such as eDP, LVDS etc.

amdgpu_dm_connector_init_helper is working correctly, it doesn't set the 
DRM_CONNECTOR_POLL_HPD flag for neither analog connectors, nor eDP, LVDS, etc. 
which is correct. The problem is with this check in amdgpu_dm_hpd_init.

Best regards,
Timur

> 
> > +
> > 
> >             dc_link = amdgpu_dm_connector->dc_link;
> >             
> >             /*




Reply via email to