This also affects Gateway MP8708(from another post) and MP8709(mine).

The reason why values 12, 37, 62 and 87 aren't working is because of the
way G-P-M increments/decrements brightness values. If HAL reports
laptop_panel.num_levels < 20 then G-P-M will change the brightness level
by 1 for each key press. Otherwise, it assumes that there are a lot of
different levels and changes the brightness level by 5% each increment.
See gpm_brightness_lcd_get_step in src/gpm-brightness-lcd.c for
reference.

Since our laptops report laptop_panel.num_levels=101, G-P-M thinks that
all levels 0-100 are valid and is trying to switch through them 5 at a
time. The brightness values 12, 37, etc don't happen to be multiples of
5.

These seems like a mostly Gateway issue. It looks like we have a few
options but I don't know which one fits best with the way HAL/G-P-M/ACPI
works.

1.) Change whatever it is listening at /sys/class/backlight/XXX/brightness to 
use contiguous values (e.g. 0-8)    [Seems like the best]
2.) Change HAL to use a custom laptop_panel.access_method that translates from 
0-8 to 0,12,25,37,etc.      [Seems like the easiest/most hackish]
3.) Change G-P-M to recognize the difference between 101 contiguous levels and 
the broken crap we have.    [Seems like the hardest/least standard]

Option 1 seems like the best but I don't know what that involves or how
to do it. Anyone have any references I could read regarding Option 1?

I working on some changes to the brightness get/set scripts to do this
hack. It will also involve an .fdi file to change the num_levels, etc.
I'll post it if I get something workable.

I'm not sure if the list of legal levels is provided by HAL and seems
like a bad change just for some special boards. I think HAL expects
num_levels to mean 0 to num_levels but I haven't read the spec yet.

If a dev could chime in with his opinion on this, I could get it done.
I'm just not sure whats the best route for the long term. I'll try to
get the short-term fix(#2) up tonight.

@DanaGoyette: /sys/.../brightness works fine when I force feed it 12,
37, etc. I haven't had that issue that you were describing.

-- 
LCD backlight turns off when between discrete levels, both from hotkeys and 
from dim-on-idle.
https://bugs.launchpad.net/bugs/121833
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to