diff options
author | Axel Lin <axel.lin@gmail.com> | 2012-06-13 08:36:07 +0200 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-06-13 11:27:27 +0200 |
commit | 8994a5e1d2443511e677d62e97d7de3718b71325 (patch) | |
tree | 837cea5b2a2229e9e949985e2649e35774cf9b7c /sound/soc/codecs/ml26124.c | |
parent | ASoC: Ux500: Correct license strings (diff) | |
download | linux-8994a5e1d2443511e677d62e97d7de3718b71325.tar.xz linux-8994a5e1d2443511e677d62e97d7de3718b71325.zip |
ASoC: ml26124: Convert to devm_regmap_init_i2c
This fixes a leak if snd_soc_register_codec fails.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/ml26124.c')
-rw-r--r-- | sound/soc/codecs/ml26124.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/sound/soc/codecs/ml26124.c b/sound/soc/codecs/ml26124.c index 22cb5bf59273..96aa5fa05160 100644 --- a/sound/soc/codecs/ml26124.c +++ b/sound/soc/codecs/ml26124.c @@ -638,7 +638,7 @@ static __devinit int ml26124_i2c_probe(struct i2c_client *i2c, i2c_set_clientdata(i2c, priv); - priv->regmap = regmap_init_i2c(i2c, &ml26124_i2c_regmap); + priv->regmap = devm_regmap_init_i2c(i2c, &ml26124_i2c_regmap); if (IS_ERR(priv->regmap)) { ret = PTR_ERR(priv->regmap); dev_err(&i2c->dev, "regmap_init_i2c() failed: %d\n", ret); @@ -651,10 +651,7 @@ static __devinit int ml26124_i2c_probe(struct i2c_client *i2c, static __devexit int ml26124_i2c_remove(struct i2c_client *client) { - struct ml26124_priv *priv = i2c_get_clientdata(client); - snd_soc_unregister_codec(&client->dev); - regmap_exit(priv->regmap); return 0; } |