[PATCH v2 4/5] mfd: twl4030-power: Simplify error path

From: Florian Vaussard
Date: Tue Jun 18 2013 - 09:19:10 EST


Remove unnecessary goto statements, causing duplicated if
conditions.

Signed-off-by: Florian Vaussard <florian.vaussard@xxxxxxx>
---
drivers/mfd/twl4030-power.c | 38 +++++++++++++++-----------------------
1 files changed, 15 insertions(+), 23 deletions(-)

diff --git a/drivers/mfd/twl4030-power.c b/drivers/mfd/twl4030-power.c
index 9f59c94..1c19d82 100644
--- a/drivers/mfd/twl4030-power.c
+++ b/drivers/mfd/twl4030-power.c
@@ -567,22 +567,27 @@ int twl4030_power_probe(struct platform_device *pdev)

err = twl_i2c_write_u8(TWL_MODULE_PM_MASTER, TWL4030_PM_MASTER_KEY_CFG1,
TWL4030_PM_MASTER_PROTECT_KEY);
- if (err)
- goto unlock;
-
- err = twl_i2c_write_u8(TWL_MODULE_PM_MASTER, TWL4030_PM_MASTER_KEY_CFG2,
+ err |= twl_i2c_write_u8(TWL_MODULE_PM_MASTER,
+ TWL4030_PM_MASTER_KEY_CFG2,
TWL4030_PM_MASTER_PROTECT_KEY);
- if (err)
- goto unlock;
+
+ if (err) {
+ pr_err("TWL4030 Unable to unlock registers\n");
+ return err;
+ }

if (pdata) {
/* TODO: convert to device tree */
err = twl4030_power_configure_scripts(pdata);
- if (err)
- goto load;
+ if (err) {
+ pr_err("TWL4030 failed to load scripts\n");
+ return err;
+ }
err = twl4030_power_configure_resources(pdata);
- if (err)
- goto resource;
+ if (err) {
+ pr_err("TWL4030 failed to configure resource\n");
+ return err;
+ }
}

/* Board has to be wired properly to use this feature */
@@ -612,19 +617,6 @@ relock:
if (err)
pr_err("TWL4030 Unable to relock registers\n");
return err;
-
-unlock:
- if (err)
- pr_err("TWL4030 Unable to unlock registers\n");
- return err;
-load:
- if (err)
- pr_err("TWL4030 failed to load scripts\n");
- return err;
-resource:
- if (err)
- pr_err("TWL4030 failed to configure resource\n");
- return err;
}

static int twl4030_power_remove(struct platform_device *pdev)
--
1.7.5.4

--
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/