]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blobdiff - drivers/regulator/fixed.c
regulator: fixed: Ensure enable_counter is correct if reg_domain_disable fails
[mirror_ubuntu-hirsute-kernel.git] / drivers / regulator / fixed.c
index 02ad83153e19afabddadc3a4125ebd12c71abcfb..34e255c235d4c16110dd0ac18439c8f87ead388e 100644 (file)
@@ -88,10 +88,15 @@ static int reg_domain_disable(struct regulator_dev *rdev)
 {
        struct fixed_voltage_data *priv = rdev_get_drvdata(rdev);
        struct device *dev = rdev->dev.parent;
+       int ret;
+
+       ret = dev_pm_genpd_set_performance_state(dev, 0);
+       if (ret)
+               return ret;
 
        priv->enable_counter--;
 
-       return dev_pm_genpd_set_performance_state(dev, 0);
+       return 0;
 }
 
 static int reg_is_enabled(struct regulator_dev *rdev)