[Public]
Hi, Thanks for the report.
Patch fa57924c76d995 ("drm/amd/display: Refactor function dm_dp_mst_is_port_support_mode()") is kind of correcting problems causing by commit: 4df96ba6676034 ("drm/amd/display: Add timing pixel encoding for mst mode validation")
Sorry if it misses fixes tag and would suggest to backport to fix it. Thanks!
Regards, Wayne Lin
-----Original Message----- From: kevin@holm.dev kevin@holm.dev Sent: Sunday, July 28, 2024 12:43 AM To: Linux regressions mailing list regressions@lists.linux.dev; Deucher, Alexander Alexander.Deucher@amd.com; Wu, Hersen hersenxs.wu@amd.com; Lin, Wayne Wayne.Lin@amd.com Cc: regressions@lists.linux.dev; stable@vger.kernel.org; LKML <linux- kernel@vger.kernel.org>; ML dri-devel dri-devel@lists.freedesktop.org; amd-gfx@lists.freedesktop.org Subject: Re: [REGRESSION] No image on 4k display port displays connected through usb-c dock in kernel 6.10
[adding a few people and lists to the recipients]
Hi! Thx for your rpeort.
On 27.07.24 18:07, kevin@holm.dev wrote:
Connecting two 4k displays with display port through a lenovo usb-c
dock (type 40AS) to a Lenovo P14s Gen 2 (type 21A0) results in no
image on the connected displays.
The CPU in the Lenovo P14s is a 'AMD Ryzen 7 PRO 5850U with Radeon
Graphics' and it has no discrete GPU.
I first noticed the issue with kernel version '6.10.0-arch1-2'
provided by arch linux. With the previous kernel version
'6.9.10.arch1-1' both connected displays worked normally. I reported
the issue in the arch forums at
https://bbs.archlinux.org/viewtopic.php?id=297999 and was guided to
do a bisection to find the commit that caused the problem. Through
testing I identified that the issue is not present in the latest
kernel directly compiled from the trovalds/linux git repository.
With git bisect I identified
4df96ba66760345471a85ef7bb29e1cd4e956057
That's 4df96ba6676034 ("drm/amd/display: Add timing pixel encoding for
mst mode validation") [v6.10-rc1] from Hersen Wu.
Did you try if reverting that commit is possible and might fix the problem?
Reverting is not easily possible:
$ git checkout v6.10 [...] HEAD is now at 0c3836482481 Linux 6.10
$ git revert 4df96ba66760345471a85ef7bb29e1cd4e956057 Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c error: could not revert 4df96ba66760... drm/amd/display: Add timing pixel encoding for mst mode validation
I do not know enough to try and solve the conflict myself without breaking more things.
as the first bad commit and
fa57924c76d995e87ca3533ec60d1d5e55769a27
That's fa57924c76d995 ("drm/amd/display: Refactor function
dm_dp_mst_is_port_support_mode()") [v6.10-post] from Wayne Lin.
as the first commit that fixed the problem again.
Hmm, the latter commit does not have a fixes tag and might or might not
be to invasive to backport to 6.10. Let's see what the AMD developers say.
The initial commit only still shows an image on one of the connected
4k screens. I have not investigated further to find out at what point
both displays stopped showing an image.
Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
--
Everything you wanna know about Linux kernel regression tracking:
https://linux-regtracking.leemhuis.info/about/#tldr
If I did something stupid, please tell me, as explained on that page.