I know there are many similar questions already but none of the solutions listed there helped me.
Laptop: ASUS N551VW
VGAs: Intel Skylake (00:02.0) + nVidia GTX 960M (01:00.0)
Distro: Linux Mint 18 (tried also on Debian 8.6 with the same result)
Kernel is updated to 4.4.0-43-generic x86_64
Contents of /sys/class/backlight
:
intel_backlight
Reading from brightness, actual_brightness and max_brightness in that folder all give a 913 value. Writing into those has no effect.
What have I tried:
-
Playing with kernel options in
/etc/default/grub
:acpi_osi= acpi_osi=Linux acpi_backlight=intel acpi_backlight=native acpi_backlight=vendor video.use_native_backlight=1
And their various combinations.
The only effect setting acpi_backlight to native/vendor has is that the GUI stops recognizing the fact I'm pressing the fn keys and doesn't display the brightness icon with it's current level (as it thinks). Without these settings it shows the icon with its level but the real brightness stays at maximum.
- Running xbacklight has no effect (despite it's showing no errors and stops for a fraction of second before returning).
If I switch to Intel adapter and try running it with -set – it hangs the laptop completely (restartable only with power button).
- Writing brightness value directly using setpci. Has no effect at all.
The most funny part is that in BIOS and BIOS splash screen I can change the brightness using fn+f5 and fn+f6 without any problems but as soon as the Linux starts it sets the brightness to the maximum level and doesn't let to change anymore.
Not sure what else to try.
Upd:
ddccontrol -p -r 0x10 -w 50
output:
ddccontrol version 0.4.2
Copyright 2004-2005 Oleg I. Vdovikin (oleg@cs.msu.su)
Copyright 2004-2006 Nicolas Boichat (nicolas@boichat.ch)
This program comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of this program under the terms of the GNU General Public License.
Probing for available monitors....I/O warning : failed to load external entity "/usr/share/ddccontrol-db/monitor/LGD046F.xml"
Document not parsed successfully.
....
Detected monitors :
- Device: dev:/dev/i2c-3
DDC/CI supported: No
Monitor Name: VESA standard monitor
Input type: Digital
No monitor supporting DDC/CI available.
If your graphics card need it, please check all the required kernel modules are loaded (i2c-dev, and your framebuffer driver).
Upd2:
Upgrading the kernel to 4.8.4 and setting the kernel options string to acpi_osi=
solved the issue.
Best Answer
Since you have tried many solutions without success, I think your hardware is simply too new for your kernel...
Try a more recent kernel (or simply a live distro with a more recent kernel e.g. ubuntu 16.10 has got the 4.8...)