[Solved] Brightness controls change but actual brightness does not

Linux Kernel, Network, and Services configuration.
Post Reply
Message
Author
JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

[Solved] Brightness controls change but actual brightness does not

#1 Post by JohnWasRight »

Searching around (both here and on other forums) I've come to realize this is a somewhat common issue. Alas, there doesn't seem to be a specific solution (or even narrowed done set of solutions).

I'm using Debian 12 KDE on a Lenovo mini laptop. Attempting to change the monitor brightness either with the corresponding keys or using the brightness slider (or even from terminal) shows a numerical change (i.e. I see the applet indicating the brightness level changing), however this does not correspond to an actual change in monitor brightness, which seems to be at about 50%.

/sys/class/backlight has one entry, acpi_video0. Any changes of brightness control (i.e. moving the slider or using the buttons) correspond to the numerical values changing (that is, e.g. acpi_video0/brightness changes, containing the new value). However, as I said, this doesn't reflect in actual brightness difference.

For testing, I booted a live USB Fedore KDE. There, /sys/class/backlight contains a different entry, intel_backlight, and controls/slider work: The actual monitor brightness changes.

I've already tried kernel boot parameters like acpi_backlight=native (as well as vendor, video, and none), to no avail.

This is probably a simplistic way of putting it, but how do I use intel_backlight on Debian, since this seems to be working on Fedora?
Last edited by JohnWasRight on 2024-09-04 03:20, edited 1 time in total.

User avatar
blackbird
Posts: 90
Joined: 2023-08-17 04:42
Has thanked: 3 times
Been thanked: 19 times

Re: Brightness controls change but actual brightness does not

#2 Post by blackbird »

You could try installing a new kernel version with the Debian backports - https://backports.debian.org/Instructions/

I bought a Lenovo laptop last year and though Debian 12 was very fresh, drivers for many of the laptops components were missing. Since then no backports were available I installed Fedora, which always has very recent kernel versions. There the most important components worked and with every new kernel the support became better. Keyboard backlight control came only some kernel versions later.
Currently the Debian backports provide the latest stable version of the kernel, 6.10.

User avatar
stevepusser
Posts: 13068
Joined: 2009-10-06 05:53
Has thanked: 50 times
Been thanked: 97 times

Re: Brightness controls change but actual brightness does not

#3 Post by stevepusser »

How new is the hardware in the machine? This helps determine if backports are really necessary, though newer kernels can include bugfixes for older hardware.

To get a good hardware report in a terminal, install inxi and execute

Code: Select all

inxi -Fa --za
MX Linux packager and developer

JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

Re: Brightness controls change but actual brightness does not

#4 Post by JohnWasRight »

blackbird wrote: 2024-08-31 12:10 You could try installing a new kernel version with the Debian backports - https://backports.debian.org/Instructions/
A fair suggestion, but I'd like to try to focus on the issue itself. That is, try to resolve what at least appears to be a driver issue, before going the backport way and replacing the entire kernel. Especially since this is a very fidgety little computer (based on previous experiences with other distros), and now I'm in a position that I don't want to rock the boat, since everything else works fine.
stevepusser wrote: 2024-08-31 15:27 How new is the hardware in the machine?
The machine is several years old. Bought it in 2016 I think. Here's the output of inxi -Fa --za:

Code: Select all

System:
  Kernel: 6.1.0-25-amd64 arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/vmlinuz-6.1.0-25-amd64
    root=/dev/mapper/debianMini--vg-root ro quiet
  Desktop: KDE Plasma v: 5.27.5 tk: Qt v: 5.15.8 wm: kwin_wayland vt: 1
    dm: SDDM Distro: Debian GNU/Linux 12 (bookworm)
Machine:
  Type: Portable System: LENOVO product: 80NR v: MIIX 300-10IBY
    serial: <superuser required> Chassis: type: 11 v: MIIX 300-10IBY
    serial: <superuser required>
  Mobo: LENOVO model: Madrid v: SDK0J91196 STD serial: <superuser required>
    UEFI: LENOVO v: DACN25WW date: 08/20/2015
Battery:
  ID-1: axp288_fuel_gauge charge: 88% condition: N/A volts: 3.9 min: N/A
    model: N/A type: Li-ion serial: N/A status: discharging
CPU:
  Info: model: Intel Atom Z3735F bits: 64 type: MCP arch: Silvermont level: v2
    built: 2013-15 process: Intel 22nm family: 6 model-id: 0x37 (55) stepping: 8
    microcode: 0x838
  Topology: cpus: 1x cores: 4 smt: <unsupported> cache: L1: 224 KiB
    desc: d-4x24 KiB; i-4x32 KiB L2: 2 MiB desc: 2x1024 KiB
  Speed (MHz): avg: 666 high: 1166 min/max: 500/1833 scaling:
    driver: intel_cpufreq governor: schedutil cores: 1: 500 2: 1166 3: 500
    4: 500 bogomips: 10666
  Flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: Intel Atom Processor Z36xxx/Z37xxx Series Graphics & Display
    vendor: Lenovo driver: i915 v: kernel arch: Gen-7 process: Intel 22nm
    built: 2012-13 ports: active: DSI-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2
    bus-ID: 00:02.0 chip-ID: 8086:0f31 class-ID: 0300
  Display: wayland server: X.Org v: 1.22.1.9 with: Xwayland v: 22.1.9
    compositor: kwin_wayland driver: X: loaded: modesetting unloaded: fbdev,vesa
    dri: crocus gpu: i915 display-ID: :1 screens: 1
  Screen-1: 0 s-res: 1280x800 s-dpi: 96 s-size: 339x212mm (13.35x8.35")
    s-diag: 400mm (15.74")
  Monitor-1: DSI-1 mapped: XWAYLAND0 res: 1280x800 hz: 60 dpi: 151
    size: 216x135mm (8.5x5.31") modes: 800x1280
  API: OpenGL v: 4.2 Mesa 22.3.6 renderer: Mesa Intel HD Graphics (BYT)
    direct-render: Yes
Audio:
  Message: No device data found.
  API: ALSA v: k6.1.0-25-amd64 status: kernel-api tools: alsamixer,amixer
  Server-1: PipeWire v: 0.3.65 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Message: No PCI device data found.
  IF-ID-1: wlan0 state: up mac: <filter>
Drives:
  Local Storage: total: 58.25 GiB used: 15.63 GiB (26.8%)
  ID-1: /dev/mmcblk1 maj-min: 179:0 vendor: SK Hynix model: HCG8e
    size: 58.25 GiB block-size: physical: 512 B logical: 512 B type: SSD
    serial: <filter> rev: 0x7 scheme: GPT
  SMART Message: Unknown smartctl error. Unable to generate data.
Partition:
  ID-1: / raw-size: 56.3 GiB size: 55.11 GiB (97.89%) used: 15.48 GiB (28.1%)
    fs: ext4 dev: /dev/dm-1 maj-min: 254:1 mapped: debianMini--vg-root
  ID-2: /boot raw-size: 488 MiB size: 455.1 MiB (93.26%)
    used: 150.7 MiB (33.1%) fs: ext2 dev: /dev/mmcblk1p2 maj-min: 179:2
  ID-3: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%)
    used: 220 KiB (0.0%) fs: vfat dev: /dev/mmcblk1p1 maj-min: 179:1
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 50 (default 100)
  ID-1: swap-1 type: file size: 3.02 GiB used: 376.8 MiB (12.2%)
    priority: -2 file: /swapfile
  ID-2: swap-2 type: partition size: 980 MiB used: 0 KiB (0.0%) priority: -3
    dev: /dev/dm-2 maj-min: 254:2 mapped: debianMini--vg-swap_1
Sensors:
  System Temperatures: cpu: 43.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 199 Uptime: 9m wakeups: 4 Memory: 1.86 GiB used: 1.37 GiB (73.7%)
  Init: systemd v: 252 target: graphical (5) default: graphical
  tool: systemctl Compilers: gcc: 12.2.0 alt: 12 Packages: pm: dpkg pkgs: 2384
  libs: 1463 tools: apt,apt-get pm: flatpak pkgs: 0 Shell: Bash v: 5.2.15
  running-in: konsole inxi: 3.3.26

User avatar
blackbird
Posts: 90
Joined: 2023-08-17 04:42
Has thanked: 3 times
Been thanked: 19 times

Re: Brightness controls change but actual brightness does not

#5 Post by blackbird »

Oh, in my little world such things happen only with new hardware, I have this with every new laptop.
Drivers are normally part of the kernel. So for missing or buggy drivers, it should be the best solution to update to a kernel which has drivers needed. But here the hardware is old and should work also with the older Debian kernel.

I found this bugfix for the Bay Trail Atoms - https://bugs.launchpad.net/ubuntu/+sour ... ug/1783964

On my Debian 12 the setting CONFIG_WPM_LPSS_PCI is disabled, on my Fedora 40 and Ubuntu 24.04 they are both enabled. So it would be plausible that the kernel compile options is the cause of your problem.

blacktree
Posts: 11
Joined: 2023-09-15 07:44

Re: Brightness controls change but actual brightness does not

#6 Post by blacktree »

I am facing the same issue but I have amdgpu and nvidia gpu as dedicated gpu. I installed the drivers multiple times and even tested with other debian based distro but the issue is still the same.

Code: Select all

desg | grep -i acpi | grep -i error
bash: desg: command not found
root@alpha5:/home/vky# dmesg | grep -i acpi | grep -i error
[    0.248609] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.28**.EC0], AE_NOT_FOUND (20220331/dswload2-162)
[    0.248620] ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20220331/psobject-220)
this is something I got after testing acpi.
Other than that everything is running fine.

JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

Re: Brightness controls change but actual brightness does not

#7 Post by JohnWasRight »

blackbird wrote: 2024-09-01 07:29 On my Debian 12 the setting CONFIG_WPM_LPSS_PCI is disabled, on my Fedora 40 and Ubuntu 24.04 they are both enabled. So it would be plausible that the kernel compile options is the cause of your problem.
This certainly seems relevant. I do however confess my ignorance on how to proceed. Could you elaborate?

User avatar
blackbird
Posts: 90
Joined: 2023-08-17 04:42
Has thanked: 3 times
Been thanked: 19 times

Re: Brightness controls change but actual brightness does not

#8 Post by blackbird »

I hope someone else can help here.

If this was my laptop and I urgently wanted to use Debian, I would try to compile the Debian kernel with the modified setting, install that kernel and try if it works. If it works, maybe a bugreport to Debian could help to change the settings in the official kernels. I found this description how to compile a Debian kernel: https://kernel-team.pages.debian.net/ke ... n-official.

Other possibilities
- someone with a Debian testing or having the backport kernel installed, checks if the setting is different. So you could try out one of these versions.
- someone with experience compiles the kernel for you and you try it out
- I don't know if it's possible to install a kernel from another distribution and try it out.

So I have no simple solutions and an advice from someone with more experience would be better here.

JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

Re: Brightness controls change but actual brightness does not

#9 Post by JohnWasRight »

Fair enough, thanks!

Aki
Global Moderator
Global Moderator
Posts: 4047
Joined: 2014-07-20 18:12
Location: Europe
Has thanked: 113 times
Been thanked: 533 times

Re: Brightness controls change but actual brightness does not

#10 Post by Aki »

Hello,

Your computer is a LENOVO MIIX 300-10IBY 80NR marketed in 2015.

It uses a special form-factor (it is a tablet with a separate keyboard). So, it is not a common laptop.
JohnWasRight wrote: 2024-08-31 08:57 For testing, I booted a live USB Fedore KDE. There, /sys/class/backlight contains a different entry, intel_backlight, and controls/slider work: The actual monitor brightness changes.
What is the Fedora kernel version and/or the Fedora version ?
JohnWasRight wrote: 2024-09-01 04:22 The machine is several years old. Bought it in 2016 I think. Here's the output of inxi -Fa --za:

Code: Select all

Graphics:  Device-1: Intel Atom Processor Z36xxx/Z37xxx Series Graphics & Display
    vendor: Lenovo driver: i915 v: kernel arch: Gen-7 process: Intel 22nm
    built: 2012-13 ports: active: DSI-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2
    bus-ID: 00:02.0 chip-ID: 8086:0f31 class-ID: 0300
  Display: wayland server: X.Org v: 1.22.1.9 with: Xwayland v: 22.1.9
    compositor: kwin_wayland driver: X: loaded: modesetting unloaded: fbdev,vesa
    dri: crocus gpu: i915 display-ID: :1 screens: 1
  Screen-1: 0 s-res: 1280x800 s-dpi: 96 s-size: 339x212mm (13.35x8.35")
    s-diag: 400mm (15.74")
  Monitor-1: DSI-1 mapped: XWAYLAND0 res: 1280x800 hz: 60 dpi: 151
    size: 216x135mm (8.5x5.31") modes: 800x1280
  API: OpenGL v: 4.2 Mesa 22.3.6 renderer: Mesa Intel HD Graphics (BYT)
    direct-render: Yes
The intel_backlight file in /sys/class/backlight is generated by the kernel:
  • it may be useful to check the system journal after booting with the kernel parameter drm.debug=0x1ff (this should enable diagnostic messages in the DRM kernel code of the i915 kernel module, which should be responsible for handling display brightness)
  • What is the output of the following commands ?

    Code: Select all

    cd /sys/class/backlight
    ls -la
    cd acpi_video0/
    ls -la
    cat brightness
    cat max_brightness
    cat actual_brightness
    cat scale
    
  • What is the current BIOS version ?
  • What happens if you switch from Wayland to Xorg instead of Wayland as Desktop Manager ? Does the brightness is correctly handled ?
Hope that helps.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀

JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

Re: Brightness controls change but actual brightness does not

#11 Post by JohnWasRight »

Aki wrote: 2024-09-02 17:13 What is the Fedora kernel version and/or the Fedora version ?
Fedora 40.1.14, kernel 6.8.
What is the output of the following commands ?

Code: Select all

total 0
drwxr-xr-x  2 root root 0 Sep  3 07:29 .
drwxr-xr-x 60 root root 0 Sep  3 07:29 ..
lrwxrwxrwx  1 root root 0 Sep  3 07:29 acpi_video0 -> ../../devices/pci0000:00/0000:00:02.0/backlight/acpi_video0
total 0
drwxr-xr-x 3 root root    0 Sep  3 07:29 .
drwxr-xr-x 3 root root    0 Sep  3 07:29 ..
-r--r--r-- 1 root root 4096 Sep  3 07:30 actual_brightness
-rw-r--r-- 1 root root 4096 Sep  3 07:30 bl_power
-rw-r--r-- 1 root root 4096 Sep  3 07:29 brightness
lrwxrwxrwx 1 root root    0 Sep  3 07:30 device -> ../../../0000:00:02.0
-r--r--r-- 1 root root 4096 Sep  3 07:29 max_brightness
drwxr-xr-x 2 root root    0 Sep  3 07:30 power
-r--r--r-- 1 root root 4096 Sep  3 07:30 scale
lrwxrwxrwx 1 root root    0 Sep  3 07:29 subsystem -> ../../../../../class/backlight
-r--r--r-- 1 root root 4096 Sep  3 07:29 type
-rw-r--r-- 1 root root 4096 Sep  3 07:29 uevent
26
100
26
unknown
What is the current BIOS version ?
DACN25WW
What happens if you switch from Wayland to Xorg instead of Wayland as Desktop Manager ? Does the brightness is correctly handled ?
Sadly, no difference. Brightness controls react, but actual brightness not changing.

I appreciate the help, though!

PS: Here's the output of journalctl -k | grep -i "brightness\|backlight\|pwm"

Code: Select all

Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm:intel_bios_init_panel [i915]] VBT backlight PWM modulation frequency 20000 Hz, active high, min brightness 26, level 52, controller 0
Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm] *ERROR* Failed to get the SoC PWM chip
Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm:intel_backlight_setup [i915]] failed to setup backlight for connector DSI-1
Sep 03 11:19:52 debianMini systemd[1]: Created slice system-systemd\x2dbacklight.slice - Slice /system/systemd-backlight.
Sep 03 11:19:52 debianMini systemd[1]: Starting systemd-backlight@backlight:acpi_video0.service - Load/Save Screen Backlight Brightness of backlight:acpi_video0...
Sep 03 11:19:52 debianMini systemd[1]: Finished systemd-backlight@backlight:acpi_video0.service - Load/Save Screen Backlight Brightness of backlight:acpi_video0.
Update/Edit:
I also decided to install a newer kernel from backports. I tried 6.9.10. It didn't resolve the issue. Something else is at play, it seems

Aki
Global Moderator
Global Moderator
Posts: 4047
Joined: 2014-07-20 18:12
Location: Europe
Has thanked: 113 times
Been thanked: 533 times

Re: Brightness controls change but actual brightness does not

#12 Post by Aki »

Hello,
JohnWasRight wrote: 2024-09-03 04:42 [..] Here's the output of journalctl -k | grep -i "brightness\|backlight\|pwm"

Code: Select all

Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm:intel_bios_init_panel [i915]] VBT backlight PWM modulation frequency 20000 Hz, active high, min brightness 26, level 52, controller 0
Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm] *ERROR* Failed to get the SoC PWM chip
Sep 03 11:19:50 debianMini kernel: i915 0000:00:02.0: [drm:intel_backlight_setup [i915]] failed to setup backlight for connector DSI-1
[..]
This is an interesting clue.

Are the pwm-lpss-platform and pwn-lpss kernel modules loaded ? You can verify with the command:

Code: Select all

lsmod | grep pwm-lpss
Is the pwm-lpss-platform kernel module loaded in the early stages of boot ? You can do it modifying the file named /etc/initramfs-tools/modules adding a line with pwm-lpss-platform, i.e.:

Code: Select all

# List of modules that you want to include in your initramfs.
# They will be loaded at boot time in the order below.
#
# Syntax:  module_name [args ...]
#
# You must run update-initramfs(8) to effect this change.
#
# Examples:
#
# raid1
# sd_mod
pwm-lpss-platform
and then updating the initramfs with the following command (to update the initramfs for current running kernel):

Code: Select all

sudo update-intramfs -u
Then, reboot, and retest the brightness.

Hope this helps.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀

JohnWasRight
Posts: 15
Joined: 2024-01-20 13:07
Has thanked: 1 time

Re: [Solved] Brightness controls change but actual brightness does not

#13 Post by JohnWasRight »

Success!

The modules weren't properly loaded. Adding the line to /etc/initramfs-tools/modules and a reboot solved the issue. Many thanks!

Post Reply