Display flickering slightly on Lenovo X270 FHD

I recently purchased a used Lenovo X270 with the FHD (1920×1080) panel and intel i915 graphics. I noticed in both Windows 10 and linux that the display was flickering slightly when I moved the mouse or typed on the keyboard. Even a progress dialog box caused a slight flicker with every update. The flickering was so slight that at first I thought it was my eyes playing tricks on me but after a while it really started to annoy me.

I checked for a loose cable issue or a hardware problem with the panel and found nothing obvious. I started to think I was going to have to return the system for a refund. While copying a file I noticed that the flickering appeared to be related to screen drawing or cpu events. Even moving the bluetooth mouse would cause a slight flickering.

After some searching I discovered that the integrated i915 graphics have a feature called Panel Self Refresh or PSR. It’s

The fix was as simple as adding a kernel argument to the i915 module to disable PSR at boot time. On my Fedora 35 install this was fairly trivial using grubby:

sudo grubby –args=”i915.enable_psr=0″ –update-kernel=ALL

After a reboot the flickering problem was gone.