ASoC: Convert wm8904 to devm_kzalloc()
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 29 Dec 2011 20:05:00 +0000 (20:05 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 20 Jan 2012 13:58:23 +0000 (13:58 +0000)
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm8904.c

index 1ad93737f0fa416ebfe2e78f663aa40166de0845..98d4f815b4a1f0390a5fb6444b3c8f45e302b274 100644 (file)
@@ -2531,7 +2531,8 @@ static __devinit int wm8904_i2c_probe(struct i2c_client *i2c,
        struct wm8904_priv *wm8904;
        int ret;
 
-       wm8904 = kzalloc(sizeof(struct wm8904_priv), GFP_KERNEL);
+       wm8904 = devm_kzalloc(&i2c->dev, sizeof(struct wm8904_priv),
+                             GFP_KERNEL);
        if (wm8904 == NULL)
                return -ENOMEM;
 
@@ -2541,15 +2542,13 @@ static __devinit int wm8904_i2c_probe(struct i2c_client *i2c,
 
        ret = snd_soc_register_codec(&i2c->dev,
                        &soc_codec_dev_wm8904, &wm8904_dai, 1);
-       if (ret < 0)
-               kfree(wm8904);
+
        return ret;
 }
 
 static __devexit int wm8904_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
-       kfree(i2c_get_clientdata(client));
        return 0;
 }