aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/wm8728.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/codecs/wm8728.c')
-rw-r--r--sound/soc/codecs/wm8728.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/sound/soc/codecs/wm8728.c b/sound/soc/codecs/wm8728.c
index 16e969a762c3..07adc375a706 100644
--- a/sound/soc/codecs/wm8728.c
+++ b/sound/soc/codecs/wm8728.c
@@ -18,6 +18,7 @@
18#include <linux/i2c.h> 18#include <linux/i2c.h>
19#include <linux/platform_device.h> 19#include <linux/platform_device.h>
20#include <linux/spi/spi.h> 20#include <linux/spi/spi.h>
21#include <linux/slab.h>
21#include <sound/core.h> 22#include <sound/core.h>
22#include <sound/pcm.h> 23#include <sound/pcm.h>
23#include <sound/pcm_params.h> 24#include <sound/pcm_params.h>
@@ -74,8 +75,6 @@ static int wm8728_add_widgets(struct snd_soc_codec *codec)
74 75
75 snd_soc_dapm_add_routes(codec, intercon, ARRAY_SIZE(intercon)); 76 snd_soc_dapm_add_routes(codec, intercon, ARRAY_SIZE(intercon));
76 77
77 snd_soc_dapm_new_widgets(codec);
78
79 return 0; 78 return 0;
80} 79}
81 80
@@ -287,17 +286,9 @@ static int wm8728_init(struct snd_soc_device *socdev,
287 snd_soc_add_controls(codec, wm8728_snd_controls, 286 snd_soc_add_controls(codec, wm8728_snd_controls,
288 ARRAY_SIZE(wm8728_snd_controls)); 287 ARRAY_SIZE(wm8728_snd_controls));
289 wm8728_add_widgets(codec); 288 wm8728_add_widgets(codec);
290 ret = snd_soc_init_card(socdev);
291 if (ret < 0) {
292 printk(KERN_ERR "wm8728: failed to register card\n");
293 goto card_err;
294 }
295 289
296 return ret; 290 return ret;
297 291
298card_err:
299 snd_soc_free_pcms(socdev);
300 snd_soc_dapm_free(socdev);
301err: 292err:
302 kfree(codec->reg_cache); 293 kfree(codec->reg_cache);
303 return ret; 294 return ret;