[Pommed-commits] r536 - in trunk: . pommed pommed/mactel
jblache at alioth.debian.org
jblache at alioth.debian.org
Mon Dec 29 11:12:06 UTC 2008
Author: jblache
Date: 2008-12-29 11:12:06 +0000 (Mon, 29 Dec 2008)
New Revision: 536
Modified:
trunk/ChangeLog
trunk/pommed/mactel/gma950_backlight.c
trunk/pommed/mactel/nv8600mgt_backlight.c
trunk/pommed/mactel/x1600_backlight.c
trunk/pommed/sysfs_backlight.c
Log:
Check current hardware backlight level before setting AC or battery level.
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2008-12-25 12:33:27 UTC (rev 535)
+++ trunk/ChangeLog 2008-12-29 11:12:06 UTC (rev 536)
@@ -2,6 +2,8 @@
--------------------
version 1.25:
+ - pommed: check current hardware backlight level before setting AC
+ or battery level.
version 1.24:
- pommed: add new path for fnmode setting for 2.6.28.
Modified: trunk/pommed/mactel/gma950_backlight.c
===================================================================
--- trunk/pommed/mactel/gma950_backlight.c 2008-12-25 12:33:27 UTC (rev 535)
+++ trunk/pommed/mactel/gma950_backlight.c 2008-12-29 11:12:06 UTC (rev 536)
@@ -212,6 +212,7 @@
void
gma950_backlight_toggle(int lvl)
{
+ int val;
int ret;
if (lcd_gma950_cfg.on_batt == 0)
@@ -221,9 +222,19 @@
if (ret < 0)
return;
+ val = gma950_backlight_get();
+ if (val != lcd_bck_info.level)
+ {
+ mbpdbus_send_lcd_backlight(val, lcd_bck_info.level, LCD_AUTO);
+ lcd_bck_info.level = val;
+ }
+
switch (lvl)
{
case LCD_ON_AC_LEVEL:
+ if (lcd_bck_info.level >= lcd_bck_info.ac_lvl)
+ break;
+
logdebug("LCD switching to AC level\n");
gma950_backlight_set(lcd_bck_info.ac_lvl);
@@ -234,17 +245,18 @@
break;
case LCD_ON_BATT_LEVEL:
+ if (lcd_bck_info.level <= lcd_gma950_cfg.on_batt)
+ break;
+
logdebug("LCD switching to battery level\n");
lcd_bck_info.ac_lvl = lcd_bck_info.level;
- if (lcd_bck_info.level > lcd_gma950_cfg.on_batt)
- {
- gma950_backlight_set(lcd_gma950_cfg.on_batt);
- lcd_bck_info.level = lcd_gma950_cfg.on_batt;
+ gma950_backlight_set(lcd_gma950_cfg.on_batt);
- mbpdbus_send_lcd_backlight(lcd_bck_info.level, lcd_bck_info.ac_lvl, LCD_AUTO);
- }
+ mbpdbus_send_lcd_backlight(lcd_gma950_cfg.on_batt, lcd_bck_info.level, LCD_AUTO);
+
+ lcd_bck_info.level = lcd_gma950_cfg.on_batt;
break;
}
Modified: trunk/pommed/mactel/nv8600mgt_backlight.c
===================================================================
--- trunk/pommed/mactel/nv8600mgt_backlight.c 2008-12-25 12:33:27 UTC (rev 535)
+++ trunk/pommed/mactel/nv8600mgt_backlight.c 2008-12-29 11:12:06 UTC (rev 536)
@@ -128,15 +128,27 @@
void
nv8600mgt_backlight_toggle(int lvl)
{
+ int val;
+
if (lcd_nv8600mgt_cfg.on_batt == 0)
return;
if (nv8600mgt_inited == 0)
return;
+ val = nv8600mgt_backlight_get();
+ if (val != lcd_bck_info.level)
+ {
+ mbpdbus_send_lcd_backlight(val, lcd_bck_info.level, LCD_AUTO);
+ lcd_bck_info.level = val;
+ }
+
switch (lvl)
{
case LCD_ON_AC_LEVEL:
+ if (lcd_bck_info.level >= lcd_bck_info.ac_lvl)
+ break;
+
logdebug("LCD switching to AC level\n");
nv8600mgt_backlight_set(lcd_bck_info.ac_lvl);
@@ -147,17 +159,18 @@
break;
case LCD_ON_BATT_LEVEL:
+ if (lcd_bck_info.level <= lcd_nv8600mgt_cfg.on_batt)
+ break;
+
logdebug("LCD switching to battery level\n");
lcd_bck_info.ac_lvl = lcd_bck_info.level;
- if (lcd_bck_info.level > lcd_nv8600mgt_cfg.on_batt)
- {
- nv8600mgt_backlight_set(lcd_nv8600mgt_cfg.on_batt);
- lcd_bck_info.level = lcd_nv8600mgt_cfg.on_batt;
+ nv8600mgt_backlight_set(lcd_nv8600mgt_cfg.on_batt);
- mbpdbus_send_lcd_backlight(lcd_bck_info.level, lcd_bck_info.ac_lvl, LCD_AUTO);
- }
+ mbpdbus_send_lcd_backlight(lcd_nv8600mgt_cfg.on_batt, lcd_bck_info.level, LCD_AUTO);
+
+ lcd_bck_info.level = lcd_nv8600mgt_cfg.on_batt;
break;
}
}
Modified: trunk/pommed/mactel/x1600_backlight.c
===================================================================
--- trunk/pommed/mactel/x1600_backlight.c 2008-12-25 12:33:27 UTC (rev 535)
+++ trunk/pommed/mactel/x1600_backlight.c 2008-12-29 11:12:06 UTC (rev 536)
@@ -177,6 +177,7 @@
void
x1600_backlight_toggle(int lvl)
{
+ int val;
int ret;
if (lcd_x1600_cfg.on_batt == 0)
@@ -186,9 +187,19 @@
if (ret < 0)
return;
+ val = x1600_backlight_get();
+ if (val != lcd_bck_info.level)
+ {
+ mbpdbus_send_lcd_backlight(val, lcd_bck_info.level, LCD_AUTO);
+ lcd_bck_info.level = val;
+ }
+
switch (lvl)
{
case LCD_ON_AC_LEVEL:
+ if (lcd_bck_info.level >= lcd_bck_info.ac_lvl)
+ break;
+
logdebug("LCD switching to AC level\n");
x1600_backlight_set(lcd_bck_info.ac_lvl);
@@ -199,17 +210,18 @@
break;
case LCD_ON_BATT_LEVEL:
+ if (lcd_bck_info.level <= lcd_x1600_cfg.on_batt)
+ break;
+
logdebug("LCD switching to battery level\n");
lcd_bck_info.ac_lvl = lcd_bck_info.level;
- if (lcd_bck_info.level > lcd_x1600_cfg.on_batt)
- {
- x1600_backlight_set(lcd_x1600_cfg.on_batt);
- lcd_bck_info.level = lcd_x1600_cfg.on_batt;
+ x1600_backlight_set(lcd_x1600_cfg.on_batt);
- mbpdbus_send_lcd_backlight(lcd_bck_info.level, lcd_bck_info.ac_lvl, LCD_AUTO);
- }
+ mbpdbus_send_lcd_backlight(lcd_x1600_cfg.on_batt, lcd_bck_info.level, LCD_AUTO);
+
+ lcd_bck_info.level = lcd_x1600_cfg.on_batt;
break;
}
Modified: trunk/pommed/sysfs_backlight.c
===================================================================
--- trunk/pommed/sysfs_backlight.c 2008-12-25 12:33:27 UTC (rev 535)
+++ trunk/pommed/sysfs_backlight.c 2008-12-29 11:12:06 UTC (rev 536)
@@ -162,6 +162,9 @@
{
FILE *fp;
+ if (bck_driver == SYSFS_DRIVER_NONE)
+ return;
+
fp = fopen(brightness[bck_driver], "a");
if (fp == NULL)
{
@@ -218,12 +221,27 @@
void
sysfs_backlight_toggle(int lvl)
{
+ int val;
+
+ if (bck_driver == SYSFS_DRIVER_NONE)
+ return;
+
if (lcd_sysfs_cfg.on_batt == 0)
return;
+ val = sysfs_backlight_get();
+ if (val != lcd_bck_info.level)
+ {
+ mbpdbus_send_lcd_backlight(val, lcd_bck_info.level, LCD_AUTO);
+ lcd_bck_info.level = val;
+ }
+
switch (lvl)
{
case LCD_ON_AC_LEVEL:
+ if (lcd_bck_info.level >= lcd_bck_info.ac_lvl)
+ break;
+
logdebug("LCD switching to AC level\n");
sysfs_backlight_set(lcd_bck_info.ac_lvl);
@@ -234,17 +252,18 @@
break;
case LCD_ON_BATT_LEVEL:
+ if (lcd_bck_info.level <= lcd_sysfs_cfg.on_batt)
+ break;
+
logdebug("LCD switching to battery level\n");
lcd_bck_info.ac_lvl = lcd_bck_info.level;
- if (lcd_bck_info.level > lcd_sysfs_cfg.on_batt)
- {
- sysfs_backlight_set(lcd_sysfs_cfg.on_batt);
- lcd_bck_info.level = lcd_sysfs_cfg.on_batt;
+ sysfs_backlight_set(lcd_sysfs_cfg.on_batt);
- mbpdbus_send_lcd_backlight(lcd_bck_info.level, lcd_bck_info.ac_lvl, LCD_AUTO);
- }
+ mbpdbus_send_lcd_backlight(lcd_sysfs_cfg.on_batt, lcd_bck_info.level, LCD_AUTO);
+
+ lcd_bck_info.level = lcd_sysfs_cfg.on_batt;
break;
}
}
More information about the Pommed-commits
mailing list