Comment 13 for bug 367309

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Forwarding this bug from Ubuntu reporter Tim Allen:
http://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/367309

[Problem]
"xrandr --prop" shows BACKLIGHT_CONTROL supports a range of values from 0..296, however they do not work as expected

 - Even numbers from 0 to 40 turn off the backlight.
 - Even numbers from 42 to 296 uniformly increase the brightness to full strength.
 - Odd numbers from 1 to 253 uniformly decrease the brightness from full to very dim.
 - Odd numbers greater than or equal to 255 turn off the backlight.

[Original Description]
I'm currently using Jaunty on a second-generation Macbook ("Macbook2,1" in Apple parlance) with an Intel 945GM graphics chip, and have reproduced this issue on Karmic Alpha 2.

I tried switching to each of the available BACKLIGHT_CONTROL methods with "xrandr --output LVDS --set BACKLIGHT_CONTROL $method", then checked the available range with "xrandr --prop" and tried a selection of brightness settings with "xrandr --output LVDS --set BACKLIGHT $value"

When I run "xrandr --prop" the default BACKLIGHT_CONTROL value is "native", whose range of backlight values is the unusual range 0..296. These numbers map to brightnesses as follows:

 - Even numbers from 0 to 40 turn off the backlight.
 - Even numbers from 42 to 296 uniformly increase the brightness to full strength.
 - Odd numbers from 1 to 253 uniformly decrease the brightness from full to very dim.
 - Odd numbers greater than or equal to 255 turn off the backlight.

The end result is that trying to change the brightness with F1 and F2 involves mashing one or the other until you get a brightness level you're willing to put up with and hope that nothing changes it.

The "legacy" BACKLIGHT_CONTROL method has a range of 0..255, where every value produces the same mid-level brightness.

The "combination" BACKLIGHT_CONTROL has a range of 0..148, half the range of the "native" method, and it behaves like half the "native" method too:
 - Numbers from 0 to 20 turn off the backlight.
 - Numbers from 21 to 148 uniformly increase the brightness from very dim to full strength.

The "kernel" BACKLIGHT_CONTROL has a range of 0..0. Setting the backlight value to '0' produces no obvious effect (if the backlight was on, it stays on; if the backlight was off it stays off)

I would be happy if the Intel driver defaulted to "combination" BACKLIGHT_CONTROL on my hardware, since at least that works in a predictable and useful fashion. However, certain patterns make me suspect there's some underlying problem to be fixed - like the fact that the total 'lit' range in 'combination' mode is 127 brightness levels, which seems a far more likely range than 148.

Architecture: amd64
DistroRelease: Ubuntu 9.04
Package: xserver-xorg-video-intel 2:2.7.0-1ubuntu1~xup~1
ProcEnviron:
 PATH=(cuusernameom, user)
 LANG=en_AU.UTF-8ProcVersion: Linux version 2.6.28-11-generic (buildd@creusernameed) (gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) ) #42-Ubuntu SMP Fri Apr 17 01:58:03 UTC 2009
SourcePackage: xserver-xorg-video-intel
Uname: Linux 2.6.28-11-generic x86_64
UnreportableReason: This is not a genuine Ubuntu package

[lspci]
00:00.0 Host bridge [0600]: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub [8086:27a0] (rev 03)
 Subsystem: Intel Corporation Device [8086:7270]
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03)
 Subsystem: Intel Corporation Device [8086:7270]