diff options
author | Axel Lin <axel.lin@gmail.com> | 2011-12-07 10:01:30 +0800 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-12-08 00:14:19 +0800 |
commit | 8faab941bec7af1c1865db316ac2f37c78071271 (patch) | |
tree | d0c564f43aab29da0eb82b3c117b118c72e4f386 /sound/soc/pxa | |
parent | 5ff7ada748fe2f74f525893577c4418bfdaf6d4f (diff) | |
download | linux-8faab941bec7af1c1865db316ac2f37c78071271.tar.gz linux-8faab941bec7af1c1865db316ac2f37c78071271.tar.bz2 linux-8faab941bec7af1c1865db316ac2f37c78071271.zip |
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>
Diffstat (limited to 'sound/soc/pxa')
-rw-r--r-- | sound/soc/pxa/e800_wm9712.c | 6 |
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); |