ASoC: Convert WM9090 to devm_kzalloc()
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 2 Dec 2011 22:09:47 +0000 (22:09 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 3 Dec 2011 21:35:09 +0000 (21:35 +0000)
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm9090.c

index 31869afa70071feb4eb80df985188598d9dff0b4..d1d2c703eab2c75814e767b78439798ff6636ee9 100644 (file)
@@ -647,7 +647,7 @@ static int wm9090_i2c_probe(struct i2c_client *i2c,
        struct wm9090_priv *wm9090;
        int ret;
 
-       wm9090 = kzalloc(sizeof(*wm9090), GFP_KERNEL);
+       wm9090 = devm_kzalloc(&i2c->dev, sizeof(*wm9090), GFP_KERNEL);
        if (wm9090 == NULL) {
                dev_err(&i2c->dev, "Can not allocate memory\n");
                return -ENOMEM;
@@ -661,8 +661,6 @@ static int wm9090_i2c_probe(struct i2c_client *i2c,
 
        ret =  snd_soc_register_codec(&i2c->dev,
                        &soc_codec_dev_wm9090,  NULL, 0);
-       if (ret < 0)
-               kfree(wm9090);
        return ret;
 }
 
@@ -671,7 +669,6 @@ static int __devexit wm9090_i2c_remove(struct i2c_client *i2c)
        struct wm9090_priv *wm9090 = i2c_get_clientdata(i2c);
 
        snd_soc_unregister_codec(&i2c->dev);
-       kfree(wm9090);
 
        return 0;
 }