regulator: da9063: Simplify da9063_buck_set_mode for BUCK_MODE_MANUAL case
authorAxel Lin <axel.lin@ingics.com>
Thu, 26 Sep 2019 05:51:28 +0000 (13:51 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 1 Oct 2019 11:31:10 +0000 (12:31 +0100)
The sleep flag bit decides the mode for BUCK_MODE_MANUAL case, simplify
the logic as the result is the same.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Link: https://lore.kernel.org/r/20190926055128.23434-2-axel.lin@ingics.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/da9063-regulator.c

index 28b1b20f45bd1a1fbcedc92143ea6650fd510830..2aceb3b7afc2b07232ebc142d95a916648f252c2 100644 (file)
@@ -225,7 +225,7 @@ static unsigned da9063_buck_get_mode(struct regulator_dev *rdev)
 {
        struct da9063_regulator *regl = rdev_get_drvdata(rdev);
        struct regmap_field *field;
-       unsigned int val, mode = 0;
+       unsigned int val;
        int ret;
 
        ret = regmap_field_read(regl->mode, &val);
@@ -235,7 +235,6 @@ static unsigned da9063_buck_get_mode(struct regulator_dev *rdev)
        switch (val) {
        default:
        case BUCK_MODE_MANUAL:
-               mode = REGULATOR_MODE_FAST | REGULATOR_MODE_STANDBY;
                /* Sleep flag bit decides the mode */
                break;
        case BUCK_MODE_SLEEP:
@@ -262,11 +261,9 @@ static unsigned da9063_buck_get_mode(struct regulator_dev *rdev)
                return 0;
 
        if (val)
-               mode &= REGULATOR_MODE_STANDBY;
+               return REGULATOR_MODE_STANDBY;
        else
-               mode &= REGULATOR_MODE_NORMAL | REGULATOR_MODE_FAST;
-
-       return mode;
+               return REGULATOR_MODE_FAST;
 }
 
 /*