ACPI: video: Fix reversed brightness behavior on ThinkPad SL series
authorZhang Rui <rui.zhang@intel.com>
Thu, 11 Dec 2008 21:24:52 +0000 (16:24 -0500)
committerLen Brown <len.brown@intel.com>
Thu, 11 Dec 2008 21:24:52 +0000 (16:24 -0500)
commit935e5f290ec1eb0f1c15004421f5fd3154380fd5
tree2f116b2de376df6621ab700246a96e25a1183b84
parent6c34bc2976b30dc8b56392c020e25bae1f363cab
ACPI: video: Fix reversed brightness behavior on ThinkPad SL series

Section B.6.2 of ACPI 3.0b specification that defines _BCL method
doesn't require the brightness levels returned to be sorted.
At least ThinkPad SL300 (and probably all IdeaPads) returns the
array reversed (i.e. bightest levels have lowest indexes), which
causes the brightness management behave in completely reversed
manner on these machines (brightness increases when the laptop is
idle, while the display dims when used).

Sorting the array by brightness level values after reading the list
fixes the issue.

http://bugzilla.kernel.org/show_bug.cgi?id=12037

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Tested-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/video.c