diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-11-27 19:56:52 (GMT) |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-11-27 22:02:44 (GMT) |
commit | be086aa8ca7aac8292db9f1a6a17756fb1cfda81 (patch) | |
tree | 01ce01253daabf2b9a31b71f1dd9aa476a65d2bf /sound/soc/codecs | |
parent | a094b80bb603d602bef5d8c02faedab8d06ed484 (diff) | |
download | linux-be086aa8ca7aac8292db9f1a6a17756fb1cfda81.tar.xz |
ASoC: Convert WM8962 to devm_kzalloc()
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs')
-rw-r--r-- | sound/soc/codecs/wm8962.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index 018257c..8810988 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -4150,7 +4150,8 @@ static __devinit int wm8962_i2c_probe(struct i2c_client *i2c, unsigned int reg; int ret, i; - wm8962 = kzalloc(sizeof(struct wm8962_priv), GFP_KERNEL); + wm8962 = devm_kzalloc(&i2c->dev, sizeof(struct wm8962_priv), + GFP_KERNEL); if (wm8962 == NULL) return -ENOMEM; @@ -4167,7 +4168,7 @@ static __devinit int wm8962_i2c_probe(struct i2c_client *i2c, wm8962->supplies); if (ret != 0) { dev_err(&i2c->dev, "Failed to request supplies: %d\n", ret); - goto err_alloc; + goto err; } ret = regulator_bulk_enable(ARRAY_SIZE(wm8962->supplies), @@ -4241,8 +4242,7 @@ err_enable: regulator_bulk_disable(ARRAY_SIZE(wm8962->supplies), wm8962->supplies); err_get: regulator_bulk_free(ARRAY_SIZE(wm8962->supplies), wm8962->supplies); -err_alloc: - kfree(wm8962); +err: return ret; } @@ -4253,7 +4253,6 @@ static __devexit int wm8962_i2c_remove(struct i2c_client *client) snd_soc_unregister_codec(&client->dev); regmap_exit(wm8962->regmap); regulator_bulk_free(ARRAY_SIZE(wm8962->supplies), wm8962->supplies); - kfree(i2c_get_clientdata(client)); return 0; } |