Bug 217237 - Fail to read EDID after resuming from suspend since kernel 6.2
Summary: Fail to read EDID after resuming from suspend since kernel 6.2
Status: RESOLVED ANSWERED
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - non Intel) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_video-dri
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-23 21:40 UTC by James Le Cuirot
Modified: 2023-03-24 08:04 UTC (History)
1 user (show)

See Also:
Kernel Version: 6.3.0-rc3
Subsystem:
Regression: No
Bisected commit-id:


Attachments
dmesg from 6.2.7 showing boot, suspend, resume (93.66 KB, text/plain)
2023-03-23 21:40 UTC, James Le Cuirot
Details

Description James Le Cuirot 2023-03-23 21:40:12 UTC
Created attachment 304013 [details]
dmesg from 6.2.7 showing boot, suspend, resume

Since upgrading past Linux kernel 6.2, my system has been unable to read the EDID after resuming from suspend. I got the following error:

[  135.566642] EDID block 0 is all zeroes
[  135.566831] amdgpu 0000:0f:00.0: [drm] User-defined mode not supported: "2560x1440": 144 592000 2560 2568 2600 2666 1440 1465 1470 1543 0x60 0x9
[  135.566836] amdgpu 0000:0f:00.0: [drm] User-defined mode not supported: "2560x1440": 144 807923 2560 2784 3072 3584 1440 1441 1444 1565 0x20 0x6

After this, the only available mode is 640x480. This happens with both my displays, a monitor and a TV. I have a Radeon RX 6800 XT that previously worked fine in this regard. I usually override the EDID with drm.edid_firmware, but removing this has not helped.

I tried bisecting the issue, but perhaps it doesn't happen every single time, as it lead my down a dead end. I also tried reverting some potential culprits, to no avail. I can see that there were some very large EDID-related changes by Jani Nikula for 6.2. I wasn't able to revert these, so I will CC them here.

I am happy to provide further information.
Comment 1 Artem S. Tashkinov 2023-03-24 07:43:13 UTC
Please report here instead https://gitlab.freedesktop.org/drm/amd/-/issues

Also, since you're not averse to testing, you could perform regression testing:

https://docs.kernel.org/admin-guide/bug-bisect.html
Comment 2 Jani Nikula 2023-03-24 08:04:01 UTC
Yeah, bisection is likely the quickest way to resolve this.

Please add drm.debug=0xe module parameter, redo the full dmesg, and attach it to the gitlab issue.

Please also tag me with @jani in the gitlab issue. Thanks.

Note You need to log in before you can comment on or make changes to this bug.