Same issue running Fedora 34 with kernel 5.13.13. The external 4k monitor flickering occurs using both the Framework HDMI expansion card and a third party USB-C HDMI adapter. Flickering and blackouts were rendering the display useless. Lowering the resolution from 3840x2160@30hz to 2560x1440@30hz made a huge difference. Mostly stable with but still blackouts occasionally. I did notice with every blackout dmesg would spit out the following:
I’m seeing this as well on a new 4K monitor (LG 109NTTQMT073, resolution 3840x2160 60Hz). Every once in a while (somewhere between 30sec and 5min) the screen turns black for about 1 second, then restores the image.
Reducing refresh rate to 30Hz seems to be a temporary workaround.
dmesg:
i915 0000:00:02.0: [drm] *ERROR* CPU pipe B FIFO underrun: transcoder,
There’s also a message earlier in the dmesg boot sequence (about 6 seconds in) that seems to warn:
i915 0000:00:02.0: [drm] Reducing the compressed framebuffer size. This may lead to less power savings than a non-reduced-size. Try to increase stolen memory size if available in BIOS.
Thought I’d share my experience here as well, this thread helped a lot.
I’m running Ubuntu 21.10 on GNOME 40
I like to use 2 external 3840x2160 displays while at work, and had constant screen flickering and blackouts especially when playing videos and moving the mouse between monitors. Scaling down the resolution helped, but even at 30hz the full resolution was unusable. Something I tried recently that seemed to help was logging in to a GNOME session on Xorg instead of the default Wayland display manager. In Xorg I was able to use the full 3840x2160 resolution at 30hz just fine!
@Kevin_Kinney I’ve been having the exact same problem for the past few months. Same setup.
And as of yesterday both external monitors aren’t being recognized despite rebooting, plugging and unplugging, trying USB-C and HDMI cables. What’s weird is that the monitor seems to know that something’s connected, but the laptop doesn’t see the connected monitor or recognizes the monitor, but there’s no signal being sent to the monitor.
Same here. New TB4 cable, 4k@60Hz (arch linux, kernel 5.16.16-arch1-1 and also 5.17.0)
Constant blacking out of the monitor. Reducing the amount of data helped. For me, either 4k@50Hz or 2560x1440@60Hz work. 30Hz might work too, but, honestly I cannot stand this. Might be OK for movies, but for work?
@Duane_Johnson do I understand that patch correctly in that using a second DRAM channel (aka 2nd RAM module) would help?
Yes, that seems to be what the original bug reporter is saying! To me, quite a surprising outcome, if true. Do we all have just one DRAM stick? (I have only 1).
I read up on some related issues reported, most importantly Issue 4321 on freedesktop.org. As already posted, that patch seems to be the solution as it solves the issue with a single DRAM: Patch 481006
I’m quite new to Linux and want to ask for advice: does it make sense for me to try and build the kernel with that patch or is that only recommended for experienced programmers?
When is that patch expected to land in a regular Fedora / Ubuntu release?
Sorry for the basic questions, I tried my best in reading through bug reports to make sense of this issue
FYI, I built my Pop!_OS kernel with the most minimal patch applied (see above) and anecdotally it seems to have improved, but the situation is still not perfect. Even with the new patch, I would occasionally still see blackouts, unfortunately. I will continue to “monitor” the situation and report back
Note that in this first test, I did not use the drm_tip kernel (I used my distro kernel + only the patch specific to this issue), so it’s possible the patch only works in conjunction with something else that has changed in the drm_tip source.
I have a similar situation – on Ubuntu 21, have a single DRAM stick, and have improved the situation by tweaking the refresh rate. But I haven’t found a combination that eliminates the problem completely. I don’t think I need more memory now, but if it would fix the issue I’d consider it for sure.
So, very interested in hearing how your experience goes @Michael_Siebert!
Just to chime in on this for anyone else, I had a serious problem with image tearing when using fractional scaling on Linux (thread here). I also had the external monitor screen flicker problem. I didn’t put the two together.
I moved to two RAM channels (added the second stick) based on some reading around the Xe GPU and how much it likes symmetrical memory. That solved (more or less) my tearing issue, but I didn’t think to check for effects on the flickering. I just tested and sure enough, my flicker went away, too.
It looks like the Xe GPU really likes symmetrical memory, at least with the Linux drivers.
So, maybe the Framework team should say this for their future customers to know & order 2 memory sticks?
Beware, if you want to run linux on your framework, better get 2 memory modules, because it saves you tons of headache (no matter if you’re a wayland or x11 person)
For folks on Ubuntu, I upgraded to Ubuntu 22.04 (the newly-minted LTS) this morning, and am mildly surprised to see a significant improvement in my external monitor: no flickering or black-outs … even with single-channel memory (1 32GB stick).
So far it’s only been a few hours, but the external monitor has been rock-solid. And my second memory stick is set to arrive later today (classic timing), but this is working for me right now.