mfd: smsc-ece1099: Return directly after a function failure in smsc_i2c_probe()
authorMarkus Elfring <elfring@users.sourceforge.net>
Sun, 26 Jun 2016 12:30:46 +0000 (14:30 +0200)
committerLee Jones <lee.jones@linaro.org>
Wed, 29 Jun 2016 09:16:29 +0000 (10:16 +0100)
This issue was detected by using the Coccinelle software.

Return directly if a call of the function "devm_regmap_init_i2c"
or "regmap_write" failed.

Delete the jump label "err" then.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/smsc-ece1099.c

index 2aaf89f..cd18c09 100644 (file)
@@ -46,10 +46,8 @@ static int smsc_i2c_probe(struct i2c_client *i2c,
        }
 
        smsc->regmap = devm_regmap_init_i2c(i2c, &smsc_regmap_config);
-       if (IS_ERR(smsc->regmap)) {
-               ret = PTR_ERR(smsc->regmap);
-               goto err;
-       }
+       if (IS_ERR(smsc->regmap))
+               return PTR_ERR(smsc->regmap);
 
        i2c_set_clientdata(i2c, smsc);
        smsc->dev = &i2c->dev;
@@ -68,7 +66,7 @@ static int smsc_i2c_probe(struct i2c_client *i2c,
 
        ret = regmap_write(smsc->regmap, SMSC_CLK_CTRL, smsc->clk);
        if (ret)
-               goto err;
+               return ret;
 
 #ifdef CONFIG_OF
        if (i2c->dev.of_node)
@@ -76,7 +74,6 @@ static int smsc_i2c_probe(struct i2c_client *i2c,
                                           NULL, NULL, &i2c->dev);
 #endif
 
-err:
        return ret;
 }