ASoC/mpc5200: Track DMA position by period number instead of bytes
[safe/jmp/linux-2.6] / sound / soc / codecs / twl4030.c
index 277e99c..928257b 100644 (file)
@@ -1449,6 +1449,11 @@ static const struct snd_soc_dapm_route intercon[] = {
        {"ADC Virtual Left2", NULL, "TX2 Capture Route"},
        {"ADC Virtual Right2", NULL, "TX2 Capture Route"},
 
+       {"ADC Virtual Left1", NULL, "APLL Enable"},
+       {"ADC Virtual Right1", NULL, "APLL Enable"},
+       {"ADC Virtual Left2", NULL, "APLL Enable"},
+       {"ADC Virtual Right2", NULL, "APLL Enable"},
+
        /* Analog bypass routes */
        {"Right1 Analog Loopback", "Switch", "Analog Right"},
        {"Left1 Analog Loopback", "Switch", "Analog Left"},
@@ -2150,19 +2155,7 @@ static int twl4030_soc_probe(struct platform_device *pdev)
                                ARRAY_SIZE(twl4030_snd_controls));
        twl4030_add_widgets(codec);
 
-       ret = snd_soc_init_card(socdev);
-       if (ret < 0) {
-               dev_err(&pdev->dev, "failed to register card\n");
-               goto card_err;
-       }
-
        return 0;
-
-card_err:
-       snd_soc_free_pcms(socdev);
-       snd_soc_dapm_free(socdev);
-
-       return ret;
 }
 
 static int twl4030_soc_remove(struct platform_device *pdev)
@@ -2229,6 +2222,7 @@ static int __devinit twl4030_codec_probe(struct platform_device *pdev)
 
        /* Set the defaults, and power up the codec */
        twl4030_init_chip(codec);
+       codec->bias_level = SND_SOC_BIAS_OFF;
        twl4030_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
 
        ret = snd_soc_register_codec(codec);