aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2012-06-29 09:14:36 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2012-07-08 18:16:08 -0400
commite7c706b1e5ccf28eaaf76c7a4613e80b0ca52863 (patch)
tree70e260841527b64e699bbc41d907fdc10cd332f6
parente4ecf6ea84d68aea5a9785e89f52672e1e126998 (diff)
mfd: Use devm_* APIs for mc13xxx
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
-rw-r--r--drivers/mfd/mc13xxx-core.c4
-rw-r--r--drivers/mfd/mc13xxx-i2c.c6
-rw-r--r--drivers/mfd/mc13xxx-spi.c7
3 files changed, 5 insertions, 12 deletions
diff --git a/drivers/mfd/mc13xxx-core.c b/drivers/mfd/mc13xxx-core.c
index f0ea3b8b3e4a..b801dc72f041 100644
--- a/drivers/mfd/mc13xxx-core.c
+++ b/drivers/mfd/mc13xxx-core.c
@@ -723,10 +723,6 @@ void mc13xxx_common_cleanup(struct mc13xxx *mc13xxx)
723 free_irq(mc13xxx->irq, mc13xxx); 723 free_irq(mc13xxx->irq, mc13xxx);
724 724
725 mfd_remove_devices(mc13xxx->dev); 725 mfd_remove_devices(mc13xxx->dev);
726
727 regmap_exit(mc13xxx->regmap);
728
729 kfree(mc13xxx);
730} 726}
731EXPORT_SYMBOL_GPL(mc13xxx_common_cleanup); 727EXPORT_SYMBOL_GPL(mc13xxx_common_cleanup);
732 728
diff --git a/drivers/mfd/mc13xxx-i2c.c b/drivers/mfd/mc13xxx-i2c.c
index d22501dad6a6..18d29f3ca67f 100644
--- a/drivers/mfd/mc13xxx-i2c.c
+++ b/drivers/mfd/mc13xxx-i2c.c
@@ -63,7 +63,7 @@ static int mc13xxx_i2c_probe(struct i2c_client *client,
63 if (of_id) 63 if (of_id)
64 idrv->id_table = (const struct i2c_device_id*) of_id->data; 64 idrv->id_table = (const struct i2c_device_id*) of_id->data;
65 65
66 mc13xxx = kzalloc(sizeof(*mc13xxx), GFP_KERNEL); 66 mc13xxx = devm_kzalloc(&client->dev, sizeof(*mc13xxx), GFP_KERNEL);
67 if (!mc13xxx) 67 if (!mc13xxx)
68 return -ENOMEM; 68 return -ENOMEM;
69 69
@@ -72,13 +72,13 @@ static int mc13xxx_i2c_probe(struct i2c_client *client,
72 mc13xxx->dev = &client->dev; 72 mc13xxx->dev = &client->dev;
73 mutex_init(&mc13xxx->lock); 73 mutex_init(&mc13xxx->lock);
74 74
75 mc13xxx->regmap = regmap_init_i2c(client, &mc13xxx_regmap_i2c_config); 75 mc13xxx->regmap = devm_regmap_init_i2c(client,
76 &mc13xxx_regmap_i2c_config);
76 if (IS_ERR(mc13xxx->regmap)) { 77 if (IS_ERR(mc13xxx->regmap)) {
77 ret = PTR_ERR(mc13xxx->regmap); 78 ret = PTR_ERR(mc13xxx->regmap);
78 dev_err(mc13xxx->dev, "Failed to initialize register map: %d\n", 79 dev_err(mc13xxx->dev, "Failed to initialize register map: %d\n",
79 ret); 80 ret);
80 dev_set_drvdata(&client->dev, NULL); 81 dev_set_drvdata(&client->dev, NULL);
81 kfree(mc13xxx);
82 return ret; 82 return ret;
83 } 83 }
84 84
diff --git a/drivers/mfd/mc13xxx-spi.c b/drivers/mfd/mc13xxx-spi.c
index 03df422feb76..234207f7a831 100644
--- a/drivers/mfd/mc13xxx-spi.c
+++ b/drivers/mfd/mc13xxx-spi.c
@@ -129,7 +129,7 @@ static int mc13xxx_spi_probe(struct spi_device *spi)
129 if (of_id) 129 if (of_id)
130 sdrv->id_table = &mc13xxx_device_id[(enum mc13xxx_id) of_id->data]; 130 sdrv->id_table = &mc13xxx_device_id[(enum mc13xxx_id) of_id->data];
131 131
132 mc13xxx = kzalloc(sizeof(*mc13xxx), GFP_KERNEL); 132 mc13xxx = devm_kzalloc(&spi->dev, sizeof(*mc13xxx), GFP_KERNEL);
133 if (!mc13xxx) 133 if (!mc13xxx)
134 return -ENOMEM; 134 return -ENOMEM;
135 135
@@ -139,15 +139,12 @@ static int mc13xxx_spi_probe(struct spi_device *spi)
139 mc13xxx->dev = &spi->dev; 139 mc13xxx->dev = &spi->dev;
140 mutex_init(&mc13xxx->lock); 140 mutex_init(&mc13xxx->lock);
141 141
142 mc13xxx->regmap = regmap_init(&spi->dev, &regmap_mc13xxx_bus, &spi->dev, 142 mc13xxx->regmap = devm_regmap_init_spi(spi, &mc13xxx_regmap_spi_config);
143 &mc13xxx_regmap_spi_config);
144
145 if (IS_ERR(mc13xxx->regmap)) { 143 if (IS_ERR(mc13xxx->regmap)) {
146 ret = PTR_ERR(mc13xxx->regmap); 144 ret = PTR_ERR(mc13xxx->regmap);
147 dev_err(mc13xxx->dev, "Failed to initialize register map: %d\n", 145 dev_err(mc13xxx->dev, "Failed to initialize register map: %d\n",
148 ret); 146 ret);
149 dev_set_drvdata(&spi->dev, NULL); 147 dev_set_drvdata(&spi->dev, NULL);
150 kfree(mc13xxx);
151 return ret; 148 return ret;
152 } 149 }
153 150