http://bugzilla.kernel.org/show_bug.cgi?id=12249
Summary: Lenovo ThinkPad SL series: LCD brightness works in procfs, buggy in sysfs Product: ACPI Version: 2.5 KernelVersion: 2.6.28-rc8 Platform: All OS/Version: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: Power-Video AssignedTo: acpi_power-vi...@kernel-bugs.osdl.org ReportedBy: tetrom...@gmail.com Latest working kernel version: unknown Earliest failing kernel version: 2.6.27 Distribution: Gentoo Hardware Environment: Lenovo ThinkPad SL300, Intel G45 video Software Environment: Problem Description: Reversed order of brightness levels is fixed by applying patch and DSDT in bug #12037 but several more problems with LCD brightness remain. Problem 1: brightness controls in /proc and /sys are inconsistent. First, /sys/class/backlight/acpi_video0/actual_brightness always reads 0, no matter what the actual brightness is. /sys/class/backlight/acpi_video0/brightness *sometimes* displays the correct brightness value. /proc/acpi/video/VGA/LCDD/brightness is always correct. Second, setting the brightness via procfs always works (but the change is never reflected in sysfs). Setting the brightness in sysfs to any value different from what sysfs thinks it currently is always works (and is immediately reflected in procfs). Setting the brightness in sysfs to a value equal to what it thinks the brightness is (but different from what it actually is) has no effect. Here is a sequence of commands to illustrate this issue: # # Start: LCD is at 100% brightness # cat /proc/acpi/video/VGA/LCDD/brightness levels: 100 80 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 100 current: 100 # cat /sys/class/backlight/acpi_video0/brightness 15 # # 15 is the max increment, 0 is lowest # echo 50 > /proc/acpi/video/VGA/LCDD/brightness # # LCD is at 50% brightness # cat /proc/acpi/video/VGA/LCDD/brightness | grep current current: 50 # cat /sys/class/backlight/acpi_video0/brightness 15 # # sysfs is lying # echo 15 > /sys/class/backlight/acpi_video0/brightness # # nothing happens # cat /proc/acpi/video/VGA/LCDD/brightness | grep current current: 50 # echo 70 > /proc/acpi/video/VGA/LCDD/brightness # # screen goes to 70% brightness # cat /proc/acpi/video/VGA/LCDD/brightness | grep current current: 70 # cat /sys/class/backlight/acpi_video0/brightness 15 # echo 3 > /sys/class/backlight/acpi_video0/brightness # # screen goes to 35% brightness # cat /proc/acpi/video/VGA/LCDD/brightness | grep current current: 90 # cat /sys/class/backlight/acpi_video0/brightness 3 # echo 15 > /sys/class/backlight/acpi_video0/brightness # # screen goes back to 100% brightness # cat /proc/acpi/video/VGA/LCDD/brightness | grep current current: 100 Problem 2: in Gnome, incrementing brightness above the maximum (with the keyboard shortcut) results in 25% brightness. When the screen turns on after going off due to power saving, the brightness is also at 25%, no matter where it was originally. Using keyboard shortcuts, the only way to bring it back to 100% is to decrement brightness one step and then increment it one step. I suspect this is also caused by sysfs brightness file's buggy behavior. -- Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. ------------------------------------------------------------------------------ SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ _______________________________________________ acpi-bugzilla mailing list acpi-bugzilla@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla