regulator: max77693: Use core code for charger's is_enabled
authorKrzysztof Kozlowski <k.kozlowski.k@gmail.com>
Wed, 29 Apr 2015 10:58:28 +0000 (19:58 +0900)
committerMark Brown <broonie@kernel.org>
Wed, 29 Apr 2015 11:01:17 +0000 (12:01 +0100)
The custom implementation of 'regulator_ops.is_enabled' callback for
charger regulator is exactly the same as regulator_is_enabled_regmap()
with 'enable_val' set.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski.k@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/max77693.c

index 9665a488e2f16e7ffde015d9682521b63f822f62..38722c8311a52bc04e1d4bac151fcc9bfec7d548 100644 (file)
 
 #define CHGIN_ILIM_STEP_20mA                   20000
 
-/* CHARGER regulator ops */
-/* CHARGER regulator uses two bits for enabling */
-static int max77693_chg_is_enabled(struct regulator_dev *rdev)
-{
-       int ret;
-       unsigned int val;
-
-       ret = regmap_read(rdev->regmap, rdev->desc->enable_reg, &val);
-       if (ret)
-               return ret;
-
-       return (val & rdev->desc->enable_mask) == rdev->desc->enable_mask;
-}
-
 /*
  * CHARGER regulator - Min : 20mA, Max : 2580mA, step : 20mA
  * 0x00, 0x01, 0x2, 0x03       = 60 mA
@@ -118,7 +104,7 @@ static struct regulator_ops max77693_safeout_ops = {
 };
 
 static struct regulator_ops max77693_charger_ops = {
-       .is_enabled             = max77693_chg_is_enabled,
+       .is_enabled             = regulator_is_enabled_regmap,
        .enable                 = regulator_enable_regmap,
        .disable                = regulator_disable_regmap,
        .get_current_limit      = max77693_chg_get_current_limit,
@@ -155,6 +141,7 @@ static const struct regulator_desc regulators[] = {
                .enable_reg = MAX77693_CHG_REG_CHG_CNFG_00,
                .enable_mask = CHG_CNFG_00_CHG_MASK |
                                CHG_CNFG_00_BUCK_MASK,
+               .enable_val = CHG_CNFG_00_CHG_MASK | CHG_CNFG_00_BUCK_MASK,
        },
 };