[arch-commits] CVS update of core/base/kernel26 (1 file)
Tobias Powalowski
tpowa at archlinux.org
Wed Oct 10 21:19:37 UTC 2007
Date: Wednesday, October 10, 2007 @ 17:19:37
Author: tpowa
Path: /home/cvs-core/core/base/kernel26
Added: adjust_current_level_to_closest_available.patch (1.1)
'upgpgk: added missing patch'
-------------------------------------------------+
adjust_current_level_to_closest_available.patch | 36 ++++++++++++++++++++++
1 file changed, 36 insertions(+)
Index: core/base/kernel26/adjust_current_level_to_closest_available.patch
diff -u /dev/null core/base/kernel26/adjust_current_level_to_closest_available.patch:1.1
--- /dev/null Wed Oct 10 17:19:37 2007
+++ core/base/kernel26/adjust_current_level_to_closest_available.patch Wed Oct 10 17:19:37 2007
@@ -0,0 +1,36 @@
+ACPI: VIDEO: Adjust current level to closest available one.
+
+From: Alexey Starikovskiy <astarikovskiy at suse.de>
+
+Signed-off-by: Alexey Starikovskiy <astarikovskiy at suse.de>
+---
+
+ drivers/acpi/video.c | 13 ++++++++++++-
+ 1 files changed, 12 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
+index 3c9bb85..63b1101 100644
+--- a/drivers/acpi/video.c
++++ b/drivers/acpi/video.c
+@@ -1634,9 +1634,20 @@ static int
+ acpi_video_get_next_level(struct acpi_video_device *device,
+ u32 level_current, u32 event)
+ {
+- int min, max, min_above, max_below, i, l;
++ int min, max, min_above, max_below, i, l, delta = 255;
+ max = max_below = 0;
+ min = min_above = 255;
++ /* Find closest level to level_current */
++ for (i = 0; i < device->brightness->count; i++) {
++ l = device->brightness->levels[i];
++ if (abs(l - level_current) < abs(delta)) {
++ delta = l - level_current;
++ if (!delta)
++ break;
++ }
++ }
++ /* Ajust level_current to closest available level */
++ level_current += delta;
+ for (i = 0; i < device->brightness->count; i++) {
+ l = device->brightness->levels[i];
+ if (l < min)
More information about the arch-commits
mailing list