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....@ingics.com>
---
 drivers/regulator/da9063-regulator.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/regulator/da9063-regulator.c 
b/drivers/regulator/da9063-regulator.c
index 28b1b20f45bd..2aceb3b7afc2 100644
--- a/drivers/regulator/da9063-regulator.c
+++ b/drivers/regulator/da9063-regulator.c
@@ -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;
 }
 
 /*
-- 
2.20.1

Reply via email to