video: fbdev: imxfb: fix semantic of .get_power and .set_power
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Wed, 4 May 2016 09:43:16 +0000 (11:43 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 10 May 2016 08:42:12 +0000 (11:42 +0300)
.set_power gets passed an FB_BLANK_XXX value, not a bool. So 0 signals
on; and >1 means off. The same applies for return values of .get_power.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
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);
This page took 0.027547 seconds and 5 git commands to generate.