Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e77a4c2f authored by Florian Vaussard's avatar Florian Vaussard Committed by Samuel Ortiz
Browse files

mfd: twl4030-power: Simplify error path



Remove unnecessary goto statements, causing duplicated if
conditions.

Signed-off-by: default avatarFlorian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent b0fc1da4
Loading
Loading
Loading
Loading
+15 −23
Original line number Diff line number Diff line
@@ -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 @@ int twl4030_power_probe(struct platform_device *pdev)
	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)