]> git.karo-electronics.de Git - linux-beck.git/blobdiff - sound/soc/codecs/wm8510.c
ASoC: Factor out snd_soc_init_card()
[linux-beck.git] / sound / soc / codecs / wm8510.c
index 060d5d06ba955019baf1209595a72734d6866657..e3c21ebcc08ea1bc66226312c75d7e95be6e3173 100644 (file)
@@ -271,8 +271,8 @@ static void pll_factors(unsigned int target, unsigned int source)
        pll_div.k = K;
 }
 
-static int wm8510_set_dai_pll(struct snd_soc_dai *codec_dai,
-               int pll_id, unsigned int freq_in, unsigned int freq_out)
+static int wm8510_set_dai_pll(struct snd_soc_dai *codec_dai, int pll_id,
+               int source, unsigned int freq_in, unsigned int freq_out)
 {
        struct snd_soc_codec *codec = codec_dai->codec;
        u16 reg;
@@ -604,16 +604,9 @@ static int wm8510_init(struct snd_soc_device *socdev,
        snd_soc_add_controls(codec, wm8510_snd_controls,
                                ARRAY_SIZE(wm8510_snd_controls));
        wm8510_add_widgets(codec);
-       ret = snd_soc_init_card(socdev);
-       if (ret < 0) {
-               printk(KERN_ERR "wm8510: failed to register card\n");
-               goto card_err;
-       }
+
        return ret;
 
-card_err:
-       snd_soc_free_pcms(socdev);
-       snd_soc_dapm_free(socdev);
 err:
        kfree(codec->reg_cache);
        return ret;