Bug 17229

Summary: RandR brightness control is inverted
Product: xorg Reporter: paladin <paladin>
Component: Driver/intelAssignee: Jesse Barnes <jbarnes>
Status: RESOLVED NOTOURBUG QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium Keywords: NEEDINFO
Version: 7.3 (2007.09)   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
URL: http://bugzilla.kernel.org/show_bug.cgi?id=11396
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
xorg.conf
none
x.org log file
none
xrandr --prop
none
VBIOS rom file none

Description paladin 2008-08-20 12:33:16 UTC
xrandr --output LVDS --set BACKLIGHT 0

The command above will set the brightness to its maximum value, while the one below sets the minimum value:

xrandr --output LVDS --set BACKLIGHT 13
Comment 1 Jesse Barnes 2008-08-20 22:34:22 UTC
What kind of platform is it?  Can you attach the output of "xrandr --prop", your X log and your xorg.conf file?  Also, can you attach your VBIOS rom file?
  $ cd cd /sys/devices/pci0000\:00/0000\:00\:02.0
  $ echo 1 > rom
  $ cat rom > /tmp/vbios.bin
  $ echo 0 > rom
(you'll need to be root).

Thanks,
Jesse
Comment 2 paladin 2008-08-21 12:25:22 UTC
Created attachment 18454 [details]
xorg.conf
Comment 3 paladin 2008-08-21 12:26:57 UTC
Created attachment 18455 [details]
x.org log file
Comment 4 paladin 2008-08-21 12:27:35 UTC
Created attachment 18456 [details]
xrandr --prop
Comment 5 paladin 2008-08-21 12:28:14 UTC
Created attachment 18457 [details]
VBIOS rom file
Comment 6 paladin 2008-08-21 12:31:20 UTC
This is the information given by lshal:

  system.chassis.manufacturer = 'Packard Bell BV'  (string)
  system.chassis.type = 'Notebook'  (string)
  system.firmware.release_date = '05/11/2007'  (string)
  system.firmware.vendor = 'American Megatrends Inc.'  (string)
  system.firmware.version = '206'  (string)
  system.formfactor = 'laptop'  (string)
  system.hardware.primary_video.product = 10146  (0x27a2)  (int)
  system.hardware.primary_video.vendor = 32902  (0x8086)  (int)
  system.hardware.product = 'EasyNote_BU45'  (string)
  system.hardware.serial = '000613360386'  (string)
  system.hardware.uuid = 'DC8A0100-3432-0180-BF5A-001D60001558'  (string)
  system.hardware.vendor = 'Packard Bell BV'  (string)
  system.hardware.version = 'PB72E06210'  (string)
  system.kernel.machine = 'x86_64'  (string)
  system.kernel.name = 'Linux'  (string)
  system.kernel.version = '2.6.26-1-amd64'  (string)
Comment 7 Jesse Barnes 2008-08-21 13:18:26 UTC
Ah, that's interesting.  It looks like your system is probably using ACPI for backlight control (what does /sys/class/backlight contain?) but ACPI exposes an inverted scale to userspace.  I would think that the kernel's backlight API should be semantically consistent, so we might need to fix this there...
Comment 8 paladin 2008-08-21 13:43:14 UTC
$ ls /sys/class/backlight/
acpi_video0

I'm using "video" module, if that is relevant. Do you think this may be the reason why this happens? But brightness control does not work without it :/
Comment 9 paladin 2008-08-21 13:46:35 UTC
BTW, /proc/acpi/video/VGA/LCDD/brightness works correctly.
Comment 10 Jesse Barnes 2008-08-21 14:16:16 UTC
No, using the video module is the right thing to do.  On many platforms, using ACPI is the only way we have of controlling the backlight.  But on yours it seems that the ACPI video module exposes an inverted scale.  I'd say that an ACPI video module bug, you should probably file a bug against the kernel ACPI stuff at bugzilla.kernel.org.  If you do, please add the URL to this bug so we can close it and track the issue at kernel.org.
Comment 11 paladin 2008-08-21 15:33:57 UTC
Added URL entry pointing to http://bugzilla.kernel.org/show_bug.cgi?id=11396
Comment 12 Jesse Barnes 2008-08-21 16:08:15 UTC
Ok, thanks.  Sorry for punting you over there, but the ACPI guys are generally pretty responsive, so hopefully they'll fix your issue quickly.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.