summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2011-12-07 10:01:30 +0800
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-12-08 00:14:19 +0800
commit8faab941bec7af1c1865db316ac2f37c78071271 (patch)
treed0c564f43aab29da0eb82b3c117b118c72e4f386
parent5ff7ada748fe2f74f525893577c4418bfdaf6d4f (diff)
ASoC: Fix error handling in e800_init to free gpios
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--sound/soc/pxa/e800_wm9712.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/soc/pxa/e800_wm9712.c b/sound/soc/pxa/e800_wm9712.c
index 6a8f38b6c379..26e02322f10b 100644
--- a/sound/soc/pxa/e800_wm9712.c
+++ b/sound/soc/pxa/e800_wm9712.c
@@ -136,8 +136,10 @@ static int __init e800_init(void)
goto free_spk_amp_gpio;
e800_snd_device = platform_device_alloc("soc-audio", -1);
- if (!e800_snd_device)
- return -ENOMEM;
+ if (!e800_snd_device) {
+ ret = -ENOMEM;
+ goto free_spk_amp_gpio;
+ }
platform_set_drvdata(e800_snd_device, &e800);
ret = platform_device_add(e800_snd_device);