I'm trying to fix the backlight issue on my Macbook Pro Retina after installing Ubuntu 16.04.

The problem is the backlight dimmer buttons F1 F2 or Fn+F1 and Fn+F2 are not working at all after installing Ubuntu 16.04.

I have run in some answers that recommends to set the acpi_backlight=vendor on the GRUB_CMDLINE_LINUX_DEFAULT parameter and rebooting it and still not working.

Also I've tried this other workaround https://itsfoss.com/fix-brightness-ubuntu-1310/ but the ls /sys/class/backlight/ directory returns different files, I've also tried to set some configuration similar to the one proposed on the link but then I got an error at booting Ubuntu on the graphics card.

Have anybody figured this out?

  • Intel or Nvidia gpu? – rogerdpack Jun 21 '19 at 4:01

What I did was:

sudo vim /etc/rc.local 

and added the following line before the exit line

setpci -v -H1 -s 00:01.00 BRIDGE_CONTROL=0

then just reboot.

That worked for me.

  • my terminal tells me that sudo: vim: command not found PS, I'm all kinds of noob. Just installed Ubuntu after a Windows 7 update left my old iMac 11,2 in a vicious reboot cycle. – user585179 Aug 23 '16 at 0:53
  • 1
    @ReformedGoblin vim isn't default-installed anymore, you can either use vi instead of vim, or install vim with sudo apt-get install vim – Thomas Ward Aug 23 '16 at 1:49
  • Not working on a MBP 2015 – e2-e4 Jun 25 '17 at 7:20
  • Could you add some explanation or links to explanations of what it does and why it could be a fix, please? – Alexey Feb 16 '19 at 17:17
  • Didn't work for GeForce 9400M on a MacBook 2008 with LinuxMint 19.2. – Alexey Sep 11 '19 at 20:04
  1. In the Terminal application enter:
sudo nano /usr/share/X11/xorg.conf.d/10-nvidia-brightness.conf
  1. Paste:
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "[GPU]"
    Option         "RegistryDwords" "EnableBrightnessControl=1"
  1. In a new terminal tab (Control + T) or window enter:

lspci | grep -i --color 'vga\|3d\|2d'

  1. In the first terminal substitude the word [GPU] for the name between brackets shown in the second terminal, leaving out the brackets.

  2. Save the document in the first terminal (Control + O), and reboot the computer.

  • Leads to screen blanking, I could not get passed boot screen. So definitely not a solution for GeForce GT 650M Mac Edition – malat Aug 26 '17 at 12:59
  • 2
    Worked in GeForce 9400M in Ubuntu 16.04. – Alberto Salvia Novella Aug 27 '17 at 13:35
  • Doesn't work for GeForce GT 750M Mac Edition in Arch Linux – ktec Mar 27 '18 at 5:29
  • Didn't work for GeForce 9400M on a MacBook 2008 with LinuxMint 19.1. Did you set your GRUB_CMDLINE_LINUX_DEFAULT to some special value by any chance? – Alexey Feb 14 '19 at 19:12
  • I returned the computer to the owner, so I cannot check. – Alberto Salvia Novella Feb 16 '19 at 0:17

This may be helpful:

# grab copy of source
curl -O https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.8.7.tar.xz
tar xf linux-4.8.7.tar.xz
cd linux-4.8.7/drivers/platform/x86

# patch it
curl -o file.patch https://bugzilla.kernel.org/attachment.cgi?id=218051
patch apple-gmux.c < file.patch

# build it
echo '
obj-m += apple-gmux.o

  make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

  make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
' > Makefile

# install
targetDir="/lib/modules/$(uname -r)/kernel/drivers/platform/x86"
sudo cp ${targetDir}/apple-gmux.ko ${targetDir}/apple-gmux.ko.backup
sudo cp apple-gmux.ko ${targetDir}


Source: https://bugzilla.kernel.org/show_bug.cgi?id=105051#c37

  • patch was applied in kernel v 4.16 FWIW... – rogerdpack Jun 18 '19 at 4:15

For me, adding the setpci command to /etc/rc.local worked, but only after I also added the header #!/bin/sh and made the file executable. This could be the reason why that solution doesn't work for people in whose systems rc.local didn't already exist.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.