Re: [PATCH v2 2/2] regulator: ab8500-ext: Remove enable() and disable()functions

From: Bengt JÃnsson
Date: Wed Apr 17 2013 - 04:52:20 EST


On 04/16/2013 05:33 PM, Axel Lin wrote:
Both enable() and disable() functions have only one caller, thus remove them.

Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
Looks fine.

Acked-by: Bengt Jonsson <bengt.g.jonsson@xxxxxxxxxxxxxx>
---
drivers/regulator/ab8500-ext.c | 64 +++++++++++++++-------------------------
1 file changed, 23 insertions(+), 41 deletions(-)

diff --git a/drivers/regulator/ab8500-ext.c b/drivers/regulator/ab8500-ext.c
index 03faf9c..b4d4547 100644
--- a/drivers/regulator/ab8500-ext.c
+++ b/drivers/regulator/ab8500-ext.c
@@ -54,32 +54,44 @@ struct ab8500_ext_regulator_info {
u8 update_val_hw;
};
-static int enable(struct ab8500_ext_regulator_info *info, u8 *regval)
+static int ab8500_ext_regulator_enable(struct regulator_dev *rdev)
{
int ret;
+ struct ab8500_ext_regulator_info *info = rdev_get_drvdata(rdev);
+ u8 regval;
- *regval = info->update_val;
+ if (info == NULL) {
+ dev_err(rdev_get_dev(rdev), "regulator info null pointer\n");
+ return -EINVAL;
+ }
/*
* To satisfy both HW high power request and SW request, the regulator
* must be on in high power.
*/
if (info->cfg && info->cfg->hwreq)
- *regval = info->update_val_hp;
+ regval = info->update_val_hp;
+ else
+ regval = info->update_val;
ret = abx500_mask_and_set_register_interruptible(info->dev,
info->update_bank, info->update_reg,
- info->update_mask, *regval);
+ info->update_mask, regval);
if (ret < 0) {
dev_err(rdev_get_dev(info->rdev),
"couldn't set enable bits for regulator\n");
return ret;
}
- return ret;
+ dev_dbg(rdev_get_dev(rdev),
+ "%s-enable (bank, reg, mask, value): 0x%02x, 0x%02x, 0x%02x, 0x%02x\n",
+ info->desc.name, info->update_bank, info->update_reg,
+ info->update_mask, regval);
+
+ return 0;
}
-static int ab8500_ext_regulator_enable(struct regulator_dev *rdev)
+static int ab8500_ext_regulator_disable(struct regulator_dev *rdev)
{
int ret;
struct ab8500_ext_regulator_info *info = rdev_get_drvdata(rdev);
@@ -90,59 +102,29 @@ static int ab8500_ext_regulator_enable(struct regulator_dev *rdev)
return -EINVAL;
}
- ret = enable(info, &regval);
-
- dev_dbg(rdev_get_dev(rdev), "%s-enable (bank, reg, mask, value):"
- " 0x%02x, 0x%02x, 0x%02x, 0x%02x\n",
- info->desc.name, info->update_bank, info->update_reg,
- info->update_mask, regval);
-
- return ret;
-}
-
-static int disable(struct ab8500_ext_regulator_info *info, u8 *regval)
-{
- int ret;
-
- *regval = 0x0;
-
/*
* Set the regulator in HW request mode if configured
*/
if (info->cfg && info->cfg->hwreq)
- *regval = info->update_val_hw;
+ regval = info->update_val_hw;
+ else
+ regval = 0;
ret = abx500_mask_and_set_register_interruptible(info->dev,
info->update_bank, info->update_reg,
- info->update_mask, *regval);
+ info->update_mask, regval);
if (ret < 0) {
dev_err(rdev_get_dev(info->rdev),
"couldn't set disable bits for regulator\n");
return ret;
}
- return ret;
-}
-
-static int ab8500_ext_regulator_disable(struct regulator_dev *rdev)
-{
- int ret;
- struct ab8500_ext_regulator_info *info = rdev_get_drvdata(rdev);
- u8 regval;
-
- if (info == NULL) {
- dev_err(rdev_get_dev(rdev), "regulator info null pointer\n");
- return -EINVAL;
- }
-
- ret = disable(info, &regval);
-
dev_dbg(rdev_get_dev(rdev), "%s-disable (bank, reg, mask, value):"
" 0x%02x, 0x%02x, 0x%02x, 0x%02x\n",
info->desc.name, info->update_bank, info->update_reg,
info->update_mask, regval);
- return ret;
+ return 0;
}
static int ab8500_ext_regulator_is_enabled(struct regulator_dev *rdev)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/