]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/video/backlight/lcd.c
drivers/video/backlight/lcd.c: return ENXIO when ops functions cannot be called
[mirror_ubuntu-artful-kernel.git] / drivers / video / backlight / lcd.c
index a5d0d024bb92939ec9cdefbd6788febabebfb337..34fb6bd798c84bb82e79b7f651a380b0547955cd 100644 (file)
@@ -108,7 +108,7 @@ static ssize_t lcd_show_power(struct device *dev, struct device_attribute *attr,
 static ssize_t lcd_store_power(struct device *dev,
                struct device_attribute *attr, const char *buf, size_t count)
 {
-       int rc = -ENXIO;
+       int rc;
        struct lcd_device *ld = to_lcd_device(dev);
        unsigned long power;
 
@@ -116,6 +116,8 @@ static ssize_t lcd_store_power(struct device *dev,
        if (rc)
                return rc;
 
+       rc = -ENXIO;
+
        mutex_lock(&ld->ops_lock);
        if (ld->ops && ld->ops->set_power) {
                pr_debug("set power to %lu\n", power);
@@ -144,7 +146,7 @@ static ssize_t lcd_show_contrast(struct device *dev,
 static ssize_t lcd_store_contrast(struct device *dev,
                struct device_attribute *attr, const char *buf, size_t count)
 {
-       int rc = -ENXIO;
+       int rc;
        struct lcd_device *ld = to_lcd_device(dev);
        unsigned long contrast;
 
@@ -152,6 +154,8 @@ static ssize_t lcd_store_contrast(struct device *dev,
        if (rc)
                return rc;
 
+       rc = -ENXIO;
+
        mutex_lock(&ld->ops_lock);
        if (ld->ops && ld->ops->set_contrast) {
                pr_debug("set contrast to %lu\n", contrast);