]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/video/fbdev/imxfb.c
video: fbdev: imxfb: fix semantic of .get_power and .set_power
[karo-tx-linux.git] / drivers / video / fbdev / imxfb.c
index 76b6a7784b06c7c752ba79862c26b2edcf51f932..6d402c1a0f2b62d9781fdc7ee1899afb9e743dea 100644 (file)
@@ -758,10 +758,11 @@ static int imxfb_lcd_get_power(struct lcd_device *lcddev)
 {
        struct imxfb_info *fbi = dev_get_drvdata(&lcddev->dev);
 
-       if (!IS_ERR(fbi->lcd_pwr))
-               return regulator_is_enabled(fbi->lcd_pwr);
+       if (!IS_ERR(fbi->lcd_pwr) &&
+           !regulator_is_enabled(fbi->lcd_pwr))
+               return FB_BLANK_POWERDOWN;
 
-       return 1;
+       return FB_BLANK_UNBLANK;
 }
 
 static int imxfb_lcd_set_power(struct lcd_device *lcddev, int power)
@@ -769,7 +770,7 @@ static int imxfb_lcd_set_power(struct lcd_device *lcddev, int power)
        struct imxfb_info *fbi = dev_get_drvdata(&lcddev->dev);
 
        if (!IS_ERR(fbi->lcd_pwr)) {
-               if (power)
+               if (power == FB_BLANK_UNBLANK)
                        return regulator_enable(fbi->lcd_pwr);
                else
                        return regulator_disable(fbi->lcd_pwr);