summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/wm1250-ev1.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-11-27 16:56:55 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-11-27 17:03:59 +0100
commit5fe803f56ad41cf008399f71ee48280f0cf9732b (patch)
tree5f04ee86704fa7ee9d9c414f94e9bb0d1b530dde /sound/soc/codecs/wm1250-ev1.c
parentASoC: Remove unneeded platform_device.h inclusions from CODECs (diff)
downloadlinux-5fe803f56ad41cf008399f71ee48280f0cf9732b.tar.xz
linux-5fe803f56ad41cf008399f71ee48280f0cf9732b.zip
ASoC: Convert wm1250-ev1 driver to use devm_kzalloc()
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/wm1250-ev1.c')
-rw-r--r--sound/soc/codecs/wm1250-ev1.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/sound/soc/codecs/wm1250-ev1.c b/sound/soc/codecs/wm1250-ev1.c
index cd0ec0fd1dba..aefb4f89be0e 100644
--- a/sound/soc/codecs/wm1250-ev1.c
+++ b/sound/soc/codecs/wm1250-ev1.c
@@ -116,7 +116,7 @@ static int __devinit wm1250_ev1_pdata(struct i2c_client *i2c)
if (!pdata)
return 0;
- wm1250 = kzalloc(sizeof(*wm1250), GFP_KERNEL);
+ wm1250 = devm_kzalloc(&i2c->dev, sizeof(*wm1250), GFP_KERNEL);
if (!wm1250) {
dev_err(&i2c->dev, "Unable to allocate private data\n");
ret = -ENOMEM;
@@ -134,15 +134,13 @@ static int __devinit wm1250_ev1_pdata(struct i2c_client *i2c)
ret = gpio_request_array(wm1250->gpios, ARRAY_SIZE(wm1250->gpios));
if (ret != 0) {
dev_err(&i2c->dev, "Failed to get GPIOs: %d\n", ret);
- goto err_alloc;
+ goto err;
}
dev_set_drvdata(&i2c->dev, wm1250);
return ret;
-err_alloc:
- kfree(wm1250);
err:
return ret;
}
@@ -151,10 +149,8 @@ static void wm1250_ev1_free(struct i2c_client *i2c)
{
struct wm1250_priv *wm1250 = dev_get_drvdata(&i2c->dev);
- if (wm1250) {
+ if (wm1250)
gpio_free_array(wm1250->gpios, ARRAY_SIZE(wm1250->gpios));
- kfree(wm1250);
- }
}
static int __devinit wm1250_ev1_probe(struct i2c_client *i2c,