diff options
author | Zhang Rui <rui.zhang@intel.com> | 2008-12-31 10:58:48 +0800 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-12-30 23:39:43 -0500 |
commit | 9e6dada9d255497127251c03aaa59296d186f959 (patch) | |
tree | ed1cb1773685211758ae88d41f80f8df9146afaf /drivers/acpi | |
parent | 11e93130c7ce5228d484fd5e86f3984835d4256b (diff) | |
download | lwn-9e6dada9d255497127251c03aaa59296d186f959.tar.gz lwn-9e6dada9d255497127251c03aaa59296d186f959.zip |
video: always update the brightness when poking "brightness"
always update props.brightness no matter the backlight is changed
via procfs, hotkeys or sysfs.
Sighed-off-by: Zhang Rui <rui.zhang@intel.com>
Acked-by: Matthew Garrett <mjg59@srcf.ucam.org>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/video.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c index baa441929720..66a610d0e2f5 100644 --- a/drivers/acpi/video.c +++ b/drivers/acpi/video.c @@ -481,6 +481,7 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level) int status = AE_OK; union acpi_object arg0 = { ACPI_TYPE_INTEGER }; struct acpi_object_list args = { 1, &arg0 }; + int state; arg0.integer.value = level; @@ -489,6 +490,10 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level) status = acpi_evaluate_object(device->dev->handle, "_BCM", &args, NULL); device->brightness->curr = level; + for (state = 2; state < device->brightness->count; state++) + if (level == device->brightness->levels[state]) + device->backlight->props.brightness = state - 2; + return status; } |