ACPI: ibm-acpi: fix initial status of backlight device
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Thu, 22 Feb 2007 18:04:55 +0000 (16:04 -0200)
committerHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Thu, 22 Feb 2007 18:09:25 +0000 (16:09 -0200)
The brightness class core does not update the initial status of the
device's brightness at register time.  Do it by ourselves.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Acked-by: Richard Purdie <rpurdie@rpsys.net>
drivers/acpi/ibm_acpi.c

index 4cc534e..7c1b418 100644 (file)
@@ -1711,6 +1711,12 @@ static struct backlight_ops ibm_backlight_data = {
 
 static int brightness_init(void)
 {
+       int b;
+
+       b = brightness_get(NULL);
+       if (b < 0)
+               return b;
+
        ibm_backlight_device = backlight_device_register("ibm", NULL, NULL,
                                                         &ibm_backlight_data);
        if (IS_ERR(ibm_backlight_device)) {
@@ -1718,7 +1724,9 @@ static int brightness_init(void)
                return PTR_ERR(ibm_backlight_device);
        }
 
-        ibm_backlight_device->props.max_brightness = 7;
+       ibm_backlight_device->props.max_brightness = 7;
+       ibm_backlight_device->props.brightness = b;
+       backlight_update_status(ibm_backlight_device);
 
        return 0;
 }