From aad76f743b040fe1b113691e92a2983b39c1f114 Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Thu, 25 Feb 2016 14:40:09 +0800 Subject: regulator: max77620: Eliminate duplicate code Signed-off-by: Axel Lin Signed-off-by: Mark Brown --- drivers/regulator/max77620-regulator.c | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) (limited to 'drivers/regulator') diff --git a/drivers/regulator/max77620-regulator.c b/drivers/regulator/max77620-regulator.c index 761eb965f901..0eb5d18999e6 100644 --- a/drivers/regulator/max77620-regulator.c +++ b/drivers/regulator/max77620-regulator.c @@ -264,15 +264,15 @@ static int max77620_read_slew_rate(struct max77620_regulator *pmic, int id) int slew_rate; int ret; + ret = regmap_read(pmic->rmap, rinfo->cfg_addr, &rval); + if (ret < 0) { + dev_err(pmic->dev, "Register 0x%02x read failed: %d\n", + rinfo->cfg_addr, ret); + return ret; + } + switch (rinfo->type) { case MAX77620_REGULATOR_TYPE_SD: - ret = regmap_read(pmic->rmap, rinfo->cfg_addr, &rval); - if (ret < 0) { - dev_err(pmic->dev, "Register 0x%02x read failed: %d\n", - rinfo->cfg_addr, ret); - return ret; - } - slew_rate = (rval >> MAX77620_SD_SR_SHIFT) & 0x3; switch (slew_rate) { case 0: @@ -291,12 +291,6 @@ static int max77620_read_slew_rate(struct max77620_regulator *pmic, int id) rinfo->desc.ramp_delay = slew_rate; break; default: - ret = regmap_read(pmic->rmap, rinfo->cfg_addr, &rval); - if (ret < 0) { - dev_err(pmic->dev, "Register 0x%02x read failed: %d\n", - rinfo->cfg_addr, ret); - return ret; - } slew_rate = rval & 0x1; switch (slew_rate) { case 0: -- cgit v1.2.1