Hi,
I have a nuc DN2820FYK running GNU/Linux, it mostly works fine except for the graphics card, I never was able to control the brigthness, it is running always to maximun brightness and it is burning my eyes so this time I did some debugging following this page: Kernel/Debugging/Backlight - Ubuntu Wiki and indeed it seems the bios (I'm running the lastest version - 059) is not exposing the ACPI methods for backlight control (_BCL, _BCM, _BCQ). Since writing ACPI methods is out of my reach I would like to known if some community member can help me in some way.
this is that I have tried:
first I boot the operating system with kernel parameters as recommend by https://wiki.archlinux.org/index.php/backlight#Kernel_command-line_options , but no matter what parameters I use it never works, using any combination of acpi_backlight and acpi_osi results in not backlight controls:
nuc ~ # ls -l /sys/class/backlight/
total 0
nuc ~ # acpidump -o acpidump.txt
nuc ~ # acpixtract acpidump.txt
Intel ACPI Component Architecture
ACPI Binary Table Extraction Utility version 20160729-64
Copyright (c) 2000 - 2016 Intel Corporation
Acpi table [DSDT] - 46249 bytes written to dsdt.dat
Acpi table [SSDT] - 1891 bytes written to ssdt1.dat
Acpi table [SSDT] - 656 bytes written to ssdt2.dat
Acpi table [SSDT] - 378 bytes written to ssdt3.dat
Acpi table [SSDT] - 351 bytes written to ssdt4.dat
Acpi table [SSDT] - 1088 bytes written to ssdt5.dat
Acpi table [SSDT] - 141 bytes written to ssdt6.dat
Acpi table [SSDT] - 1075 bytes written to ssdt7.dat
8 binary ACPI tables extracted
nuc ~ # iasl -d *dat 2>&1 | grep Output
ASL Output: dsdt.dsl - 426096 bytes
ASL Output: ssdt1.dsl - 9929 bytes
ASL Output: ssdt2.dsl - 7673 bytes
ASL Output: ssdt3.dsl - 4371 bytes
ASL Output: ssdt4.dsl - 2919 bytes
ASL Output: ssdt5.dsl - 9649 bytes
ASL Output: ssdt6.dsl - 1323 bytes
ASL Output: ssdt7.dsl - 16934 bytes
nuc ~ # grep _BCL *dsl
nuc ~ # grep -i -e linux -e windows *dsl
dsdt.dsl: If (_OSI ("Windows 2001"))
dsdt.dsl: If (_OSI ("Windows 2001 SP1"))
dsdt.dsl: If (_OSI ("Windows 2001 SP2"))
dsdt.dsl: If (_OSI ("Windows 2006"))
dsdt.dsl: If (_OSI ("Windows 2009"))
dsdt.dsl: If (_OSI ("Windows 2012"))
dsdt.dsl: If (_OSI ("Windows 2013"))
dsdt.dsl: Name (_CID, EisaId ("PNP0D80") /* Windows-compatible System Power Management Controller */) // _CID: Compatible ID
nuc ~ #
there are strings for Windows but not for Linux.
any comment will be welcome, thank you.