Screen Brightness Issue

Hello all. I’m not sure if I should post this here or in the laptop section. If it’s in the wrong section please move. I have a HP laptop with triple boot (Windows 7, openSUSE 13.1, openSUSE Tumbleweed). My graphics card is an ATI:


lspci |grep VGA

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Whistler [Radeon HD 6730M/6770M/7690M XT]


/usr/sbin/hwinfo --gfxcard
23: PCI 100.0: 0300 VGA compatible controller (VGA)            
  [Created at pci.366]
  Unique ID: VCu0.JFndIOP10u1
  Parent ID: vSkL.2f_qlnumjq1
  SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.0
  SysFS BusID: 0000:01:00.0
  Hardware Class: graphics card
  Model: "ATI Whistler XT [AMD Radeon HD 6700M Series]"
  Vendor: pci 0x1002 "ATI Technologies Inc"
  Device: pci 0x6740 "Whistler XT [AMD Radeon HD 6700M Series]"
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x1689
  Driver: "radeon"
  Driver Modules: "drm"
  Memory Range: 0xb0000000-0xbfffffff (ro,non-prefetchable)
  Memory Range: 0xc2400000-0xc241ffff (rw,non-prefetchable)
  I/O Ports: 0x4000-0x4fff (rw)
  Memory Range: 0xc2440000-0xc245ffff (ro,non-prefetchable,disabled)
  IRQ: 46 (144364 events)
  I/O Ports: 0x3c0-0x3df (rw)
  Module Alias: "pci:v00001002d00006740sv0000103Csd00001689bc03sc00i00"
  Driver Info #0:
    Driver Status: radeon is active
    Driver Activation Cmd: "modprobe radeon"
  Config Status: cfg=no, avail=yes, need=no, active=unknown
  Attached to: #8 (PCI bridge)

Primary display adapter: #23

On 13.1 brightness control works flawlessly using fn keys. However on Tumbleweed it does not as I can not change the monitor brightness (backlight). My monitor is stuck on maximum brightness. On TW, when I press the backlight fn keys I see the monitor indicator showing it’s receiving input from my keystrokes but the screen’s brighness does not change until I reduce the slider all the way down at which point the monitor goes completely dark. All other fn keys work. On my laptop all 4.x.x kernels seem to be affected. The only time it worked on TW was when I did a zypper dup upgrade and booted into an old 3.x kernel from 13.1. I hope one of the experts here can point me in the right direction to get this resolved. I’ve been researching this for about 1 month now. This issue is a deal breaker for me in order to migrate to TW.

Here’s the output on 13.1:


ls -l /sys/class/backlight/

lrwxrwxrwx 1 root root 0 Jun 17 20:25 acpi_video0 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video0
lrwxrwxrwx 1 root root 0 Jun 17 20:25 acpi_video1 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video1
lrwxrwxrwx 1 root root 0 Jun 17 20:25 acpi_video2 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video2
lrwxrwxrwx 1 root root 0 Jun 17 20:25 acpi_video3 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video3
lrwxrwxrwx 1 root root 0 Jun 17 20:25 acpi_video4 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video4
lrwxrwxrwx 1 root root 0 Jun 17 20:25 radeon_bl0 ->  ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-LVDS-1/radeon_bl0

Same output on Tumbleweed


ls -l /sys/class/backlight/

lrwxrwxrwx 1 root root 0 Jul 19 02:04 radeon_bl0 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-LVDS-1/radeon_bl0

I’ve googled this issue quiet a bit and searched this forum but have not found a fix. I’ve tried updating kernel parameters to include “acpi_backlight=vendor acpi_osi=Linux” but have had no luck. Also running lsmod|grep acpi returns nothing.

Below is some more background info:


dmesg|grep 'ACPI: Video'
    6.500070] ACPI: Video Device [PEGP] (multi-head: yes  rom: no  post: no)


for i in /sys/class/backlight/*; do echo $i; cat $i/brightness; cat $i/actual_brightness; cat $i/max_brightness; done
/sys/class/backlight/radeon_bl0
255
255
255

Thanks for any assistance you can provide.

In order for us to help you out it is very important that your provide more information about your HP laptop.
What is the model name and number.

In the meantime install xbacklight. Where you assign a lower value for “N”:

echo N > /sys/class/backlight/radeon_bl/brightness

Follow Up
Did you add the kernel parameter:
**
acpi_backlight=vendor acpi_osi=Linux**
**
Add it to the end** of the GRUB_CMDLINE_LINUX variable in the /etc/default/grub file.

Then run **grub2-mkconfig -o /boot/grub2/grub.cfg

**Reboot

If this does not work, please submit a bug report with Bugzilla under “kernel” that you are using in Tumbleweed.

On Tue 21 Jul 2015 10:16:01 PM CDT, Romanator wrote:

If this does not work, please submit a bug report with Bugzilla under
“kernel” that you are using in Tumbleweed.

Hi
Also provide the output from the command dmidecode as well, I had this
issue awhile back with my HP.

I used the following on a HP ProBook 4440s in the boot options.


acpi_osi=\"!Windows 2012\"


Cheers Malcolm °¿° LFCS, SUSE Knowledge Partner (Linux Counter #276890)
SUSE Linux Enterprise Desktop 12 GNOME 3.10.1 Kernel
3.12.43-52.6-default If you find this post helpful and are logged into
the web interface, please show your appreciation and click on the star
below… Thanks!

Hello. Many thanks for the replies and assistance.

Romanator: I have an HP Envy 17t-3000. In my original post I mentioned that I already tried adding acpi_backlight=vendor acpi_osi=Linux with no success. To be more specific I did add it to GRUB_CMDLINE_LINUX in /etc/default/grub and ran grub2-mkconfig -o /boot/grub2/grub.cfg with no success**.** Also running the following code has no effect:


echo 100 > /sys/class/backlight/radeon_bl0/brightness

MalcolmLewis: The following also has no effect.


acpi_osi=\"!Windows 2012\"

At this point I believe it may be an issue with the kernel. I will try updating to the latest kernel and see if it helps.

I have an update to report. After updating to kernel 4.1.1-1 things seem to work with no additional adjustments from me. When I last installed Tumbleweed I used a snapshot from mid June. The only kernel installed on my machine up until today was 4.0.5-1. So it seemed like that kernel or install had issues (at least for me). My current TW install has 2 kernels 4.1.1-1 and the older 4.0.5-1 What is weird is that now that I installed the new kernel, if I boot into the older kernel it now has brightness control enabled. Perhaps installing the new kernel installed additional components that were missing in the original install. I wish there was a log of the original install to identify what may have caused the issue.

I now get the following output in 4.1.1-1:


ls -l /sys/class/backlight/
total 0                                                                                                                                                                                                                                        
lrwxrwxrwx 1 root root 0 Jul 21 21:45 acpi_video0 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video0                                                                                                                  
lrwxrwxrwx 1 root root 0 Jul 21 21:45 acpi_video1 -> ../../devices/pci0000:00/0000:00:02.0/backlight/acpi_video1                                                                                                                               
lrwxrwxrwx 1 root root 0 Jul 21 21:45 intel_backlight -> ../../devices/pci0000:00/0000:00:02.0/drm/card1/card1-LVDS-2/intel_backlight                                                                                                          
lrwxrwxrwx 1 root root 0 Jul 21 21:45 radeon_bl0 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-LVDS-1/radeon_bl0   


for i in /sys/class/backlight/*; do echo $i; cat $i/brightness; cat $i/actual_brightness; cat $i/max_brightness; done                                                                                                         
/sys/class/backlight/acpi_video0                                                                                                                                                                                                               
4                                                                                                                                                                                                                                              
5                                                                                                                                                                                                                                              
10                                                                                                                                                                                                                                             
/sys/class/backlight/acpi_video1                                                                                                                                                                                                               
5                                                                                                                                                                                                                                              
5                                                                                                                                                                                                                                              
10                                                                                                                                                                                                                                             
/sys/class/backlight/intel_backlight                                                                                                                                                                                                           
4882                                                                                                                                                                                                                                           
4882                                                                                                                                                                                                                                           
4882                                                                                                                                                                                                                                           
/sys/class/backlight/radeon_bl0                                                                                                                                                                                                                
255                                                                                                                                                                                                                                            
255                                                                                                                                                                                                                                            
255                                                         

Thank you experts for replying.

Looks like the newer kernel 4.1.1-1 has been patched with the correct mapping for the keys on your laptop.
You can check the logs in /var/log.

Look up the kernel 4.1.1 using Yast for additional information on where the docs are located.

It’s good to hear that kernel update resolved the brightness problem.

Follow Up

Checking what’s configured in the kernel

Open konsole as root and type:

zcat /proc/config.gz

It’ll show you a lot of information.

Or, you can use grep to find the HP section

zcat /proc/config.gz | grep CONFIG_HP

Update #2:

Being on the cutting edge is such a roller coaster ride. After upgrading to the latest TW release (20150722) on my triple boot system I confirmed brightness control still worked using fn keys with kernel 4.1.2-1-desktop. I then decided to take the plunge and do a clean install with TW as my main system. In effect I went from a triple boot to dual boot by replacing my 13.1 install with TW. Guess what… brightness control doesn’t work. >:( All of the same issues from my original post still stand.

I’m not sure why but having multiple kernels installed seems to fix this issue for me. Unfortunately I tried searching for a 4.1.1 kernel but the repos don’t seem to have it. I guess I’ll have to wait until a newer kernel hits to test my theory.


zcat /proc/config.gz | grep CONFIG_HP
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_HP_ILO=m
CONFIG_HP100=m
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
CONFIG_HP_WATCHDOG=m
CONFIG_HPWDT_NMI_DECODING=y
CONFIG_HP_ACCEL=m
CONFIG_HP_WIRELESS=m
CONFIG_HP_WMI=m
CONFIG_HPFS_FS=m

Follow Up

Please look up a kernel under Tumbleweed. See: https://software.opensuse.org/package/kernel-desktop

Check http://download.opensuse.org/repositories/Kernel:/stable/standard/
You should find kernel 4.1.3.

Perhaps that is the magic kernel version for the HP brightness control.