summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/tps65090.c
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2012-04-25 10:04:58 +0800
committerSamuel Ortiz <sameo@linux.intel.com>2012-05-09 17:51:26 +0200
commit1d88f7a01d9588b3298cfd6a2ec30538e96d166e (patch)
tree413c450cfcf65b0eb6f0ca06b24030847049a19c /drivers/mfd/tps65090.c
parent1092e1c761dd0dc92a431085e322956d91d057a6 (diff)
downloadlinux-1d88f7a01d9588b3298cfd6a2ec30538e96d166e.tar.gz
linux-1d88f7a01d9588b3298cfd6a2ec30538e96d166e.tar.bz2
linux-1d88f7a01d9588b3298cfd6a2ec30538e96d166e.zip
mfd: Convert tps65090 to devm_regmap_init_i2c()
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers/mfd/tps65090.c')
-rw-r--r--drivers/mfd/tps65090.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/mfd/tps65090.c b/drivers/mfd/tps65090.c
index d9940870a688..9ca4c44dfc62 100644
--- a/drivers/mfd/tps65090.c
+++ b/drivers/mfd/tps65090.c
@@ -294,8 +294,8 @@ static int __devinit tps65090_i2c_probe(struct i2c_client *client,
}
}
- tps65090->rmap = regmap_init_i2c(tps65090->client,
- &tps65090_regmap_config);
+ tps65090->rmap = devm_regmap_init_i2c(tps65090->client,
+ &tps65090_regmap_config);
if (IS_ERR(tps65090->rmap)) {
ret = PTR_ERR(tps65090->rmap);
dev_err(&client->dev, "regmap_init failed with err: %d\n", ret);
@@ -307,14 +307,11 @@ static int __devinit tps65090_i2c_probe(struct i2c_client *client,
if (ret) {
dev_err(&client->dev, "add mfd devices failed with err: %d\n",
ret);
- goto err_regmap_exit;
+ goto err_irq_exit;
}
return 0;
-err_regmap_exit:
- regmap_exit(tps65090->rmap);
-
err_irq_exit:
if (client->irq)
free_irq(client->irq, tps65090);
@@ -327,7 +324,6 @@ static int __devexit tps65090_i2c_remove(struct i2c_client *client)
struct tps65090 *tps65090 = i2c_get_clientdata(client);
mfd_remove_devices(tps65090->dev);
- regmap_exit(tps65090->rmap);
if (client->irq)
free_irq(client->irq, tps65090);