acpi_ibm Thinkpad x260 does not work for screen brightness

From: Ramiro Aceves <ea1abz_at_gmail.com>
Date: Tue, 30 Jul 2024 17:38:19 UTC
Hello.

I have just installed FreeBSD in a lenovo Thinkpad x260 laptop and XFCE 
desktop. Congrats to the developers for this very good operating system! 
Everything seems to work fine except for hotkeys.

Fn+F5 (brightness down) and Fn+F6 (brightness down) do not work. After 
reading some info on internet, I arrived to the acpi_ibm man page. I 
have been strugling with this for a couple of days and I cannot solve it.

root@freebsd-x260:/home/ramiro # kldstat |grep acpi
  9    1 0xffffffff82d8b000     3390 acpi_wmi.ko

root@freebsd-x260:/home/ramiro # kldload acpi_ibm
root@freebsd-x260:/home/ramiro # kldstat |grep acpi
  9    1 0xffffffff82d8b000     3390 acpi_wmi.ko
26    1 0xffffffff82e85000     41e0 acpi_ibm.ko

root@freebsd-x260:/home/ramiro # sysctl dev.acpi_ibm.0.lcd_brightness
dev.acpi_ibm.0.lcd_brightness: 0

root@freebsd-x260:/home/ramiro # sysctl dev.acpi_ibm.0.lcd_brightness=7
dev.acpi_ibm.0.lcd_brightness: 0 -> 7

root@freebsd-x260:/home/ramiro # sysctl dev.acpi_ibm.0.lcd_brightness
dev.acpi_ibm.0.lcd_brightness: 7

root@freebsd-x260:/home/ramiro # sysctl dev.acpi_ibm.0.lcd_brightness=8
dev.acpi_ibm.0.lcd_brightness: 7
sysctl: dev.acpi_ibm.0.lcd_brightness=8: Invalid argument

8 seems to be the maximum value.

But I do not see any change in screen brightness.


I have also been playing with acpi_video driver and associated sysctl 
variables and it does not work:

root@freebsd-x260:/home/ramiro # kldload acpi_video

root@freebsd-x260:/home/ramiro # kldstat |grep acpi
  9    1 0xffffffff82d8b000     3390 acpi_wmi.ko
26    1 0xffffffff82e85000     41e0 acpi_ibm.ko
27    1 0xffffffff82e8a000     4388 acpi_video.ko

root@freebsd-x260:/home/ramiro # sysctl hw.acpi.video.lcd0.brightness
hw.acpi.video.lcd0.brightness: 100

root@freebsd-x260:/home/ramiro # sysctl hw.acpi.video.lcd0.brightness=50
hw.acpi.video.lcd0.brightness: 100 -> 50

root@freebsd-x260:/home/ramiro # sysctl hw.acpi.video.lcd0.brightness
hw.acpi.video.lcd0.brightness: 50


root@freebsd-x260:/home/ramiro # sysctl hw.acpi.video.lcd0.brightness=10
hw.acpi.video.lcd0.brightness: 50 -> 10

root@freebsd-x260:/home/ramiro # sysctl hw.acpi.video.lcd0.brightness
hw.acpi.video.lcd0.brightness: 10


Also I do not see any change y brightness levels.


In this computer I have Debian and NetBSD installed and brightness 
adjustment works fine, so it is not a hw problem. (I need the 3 
operating systems to help to the developing of SDR radio program called 
Linrad.)


Thanks so much in advance.

Regards.

Ramiro.