Hi Jani,
On Mon, Jun 13, 2022 at 02:05:17PM +0300, Jani Nikula wrote:
On Mon, 13 Jun 2022, "Jason A. Donenfeld" Jason@zx2c4.com wrote:
This reverts commit 73867c8709b569cdd7fda67f01dfe02c8d055521, which, on an i7-11850H iGPU with a Thinkpad X1 Extreme Gen 4, attached to a LG LP160UQ1-SPB1 embedded panel, causes wild flickering glitching technicolor pyrotechnics on resumption from suspend. The display shows strobing colors in an utter disaster explosion of pantone, as though bombs were dropped on the leprechauns at the base of the rainbow.
Rebooting the machine fixes the issue, presumably because the display is initialized by firmware rather than by i915. Otherwise, the GPU appears to work fine.
Bisection traced it back to this commit, which makes sense given the issues.
Thanks for putting in the effort to bisect, and the patch.
As the commit message of the regressing commit suggests, the VBT (Video BIOS Tables) should contain the info about max rates, filled in by the OEM. Unfortunately, we were missing some of the checks, e.g. 24b8b74eb2eb ("drm/i915: Parse max link rate from the eDP BDB block") added to drm-intel-next just recently.
Unfortunately, gitlab is down today so I can't check if you already tried drm-tip [1]; that might be helpful. Also, attaching /sys/kernel/debug/dri/0/i915_vbt might be useful to see if the limitation is there.
If your system works with the limitations from VBT, *and* the commits adding that support are trivial to backport to v5.19, I'm inclined to do that instead of the revert. But obviously the revert is the way to go if that doesn't happen.
I checked with drm-tip last week when I filed the bug, and I just remerged the latest today, just in case there was anything new, and alas, the problem still occurs.
Jason