amdgpu_dm_connector_mode_valid regression

Gergo Koteles soyer at irl.hu
Wed Apr 2 12:00:47 UTC 2025


to: Dmitry's new address
cc: regressions

On Wed, 2025-04-02 at 12:40 +0200, Gergo Koteles wrote:
> Hi,
> 
> While playing with
> https://lore.kernel.org/all/61c3df83ab73aba0bc7a941a443cd7faf4cf7fb0.1743195250.git.soyer@irl.hu/
> 
> I found a regression that prevented some EDID DTDs from being selected
> in some specific cases.
> 
> This is the first bad commit:
> b255ce4 ("drm/amdgpu: don't change mode in
> amdgpu_dm_connector_mode_valid()")
> 
> I think the problem is that decide_crtc_timing_for_drm_display_mode()
> function tries to copy the crtc information from the preferred mode,
> but that's not filled yet if the first one is the preferred one and
> it's not the one with the maximum refresh rate.
> 
> amdgpu_dm_connector_mode_valid()
> create_validate_stream_for_sink()
> create_stream_for_sink()
> decide_crtc_timing_for_drm_display_mode(&mode, preferred_mode, scale)
> 
> It works if I call
> drm_mode_set_crtcinfo((struct drm_display_mode *)mode, 0) before 
> create_validate_stream_for_sink()
> in amdgpu_dm_connector_mode_valid()
> 
> or 
> 
> if I comment out the decide_crtc_timing_for_drm_display_mode() in
> create_stream_for_sink()
> 
> but a better fix than these can be imagined :)
> 
> more information:
> https://gitlab.freedesktop.org/drm/amd/-/issues/4085
> 
> Regards,
> Gergo
> 



More information about the amd-gfx mailing list