nvidia-bl module with nvidia official driver exposes incorrect brightness range for Macbook 7,1
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
nvidia-graphics-drivers (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
There are two models of macbook that I've used: the macbook 6,1 and the macbook 7,1. Both of them have their brightness set internally as an integer value in the range [0..1023]. The nvidia-bl-dkms driver acknowledges this and does everything good for the macbook 6,1. However, for some unknown reason, if you're using a macbook 7,1 then the driver suddenly thinks it has a range of [0..44000] to play with.
What's the problem? The hardware of the macbook 7,1 still only accepts [0..1023], so higher values just get taken as 1023. This means, that for (44000-1023)/44000 of the sample space of the brightness setting, it's full brightness. That's most of it. So, it appears to the user using brightness controls that the brightness is always maximum.
How did I work around it? With a quick bit of zenity hacking, I wrote a simple slider GUI that allows the user to set brightness, but only [0..1023] is available... ever. It doesn't take and believe the max value from the driver (44000) so there's no problem.
affects: | ubuntu → nvidia-graphics-drivers (Ubuntu) |
By the way, here's what I believe is the problem. As nvidia-bl works properly with nouveau (and with the range of 0-44000), but not the offical nvidia driver, it may be a problem with the nvidia official driver, which only exposes the spectrum of brightness in [0-1023]. Then, of course, nvidia-bl still thinks it's [0-44000] because it's a Macbook 7,1, and the problem occurs.