Ubuntu – Upgrade to 16.10 causes desktop backlight flickering

displayflicker

I just upgraded to Ubuntu 16.10 and after the restart the display light flickers constantly, regardless of the application running. The flickering
starts when the login screen is shown. I am using a Lenovo Thinkpad E540.

I have NVIDIA GeForce GT740M with the driver

  X.Org X server -- Nouveau display driver from xserver-xorg-video-nouveau

Other driver options, which I'm not eager to try (since last time the entire graphics display stopped working):

  NVIDIA binary driver 367.57 (proprietary, tested)
  NVIDIA binary driver 340.98 (proprietary)

Output of lspic:

    lspci | grep VGA
    00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)

My current kernel version is

   uname -r
   4.8.0-26-generic

I have tried this solution here but it didn't work.

Has anyone a workaround for this very annoying issue?

Best Answer

This bug first appeared in bug reports in Kernel version 4.6.2 and users found downgrading to 4.5.4 fixed it. Upgrading to 4.7 did not fix it.

Panel Self Refresh (psr) bug

Links to links to other bug reports say it can be fixed by modifying grub's kernel boot command line with:

i915.enable_psr=0

To do this you need to gksu gedit /etc/default/grub.

Search for quiet splash and insert i915.enable_psr=0 in front of the last double quote. There may be other options but minimally it should look like this:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.enable_psr=0"

Save the file and type sudo update-grub. Then reboot and the flickering should be gone.

You can read more at: (LCD flickering on Thinkpad T440p (Haswell) with kernel 4.6-rc4 (PSR enabled))

Frame Buffer Compression

At the same time psr was introduced in the 4.6 kernel major revision, fbc (Frame Buffer Compression) support was also introduced. It prevents repainting the screen when it doesn't change. An imperceptible power savings feature (.06 watts). To turn update the grub kernel command line (as described above) by adding:

i915.enable_fbc=0

The final solution is to turn off i915 mode setting altogether with the grub kernel command line option:

i915.modset=0

Please note these can't be tested on my system and I can only go by bug reports from users with similar systems to yours.

Related Question