From 8faab941bec7af1c1865db316ac2f37c78071271 Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Wed, 7 Dec 2011 10:01:30 +0800 Subject: [PATCH] ASoC: Fix error handling in e800_init to free gpios Signed-off-by: Axel Lin Signed-off-by: Mark Brown --- sound/soc/pxa/e800_wm9712.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sound/soc/pxa/e800_wm9712.c b/sound/soc/pxa/e800_wm9712.c index 6a8f38b6c37..26e02322f10 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);