ASoC: n810: Automatically disconnect non-connected pins
authorLars-Peter Clausen <lars@metafoo.de>
Sat, 11 Apr 2015 08:47:58 +0000 (10:47 +0200)
committerMark Brown <broonie@kernel.org>
Sun, 12 Apr 2015 11:45:26 +0000 (12:45 +0100)
All CODEC input and output widgets are either in the DAPM routing table or
manually marked as non-connected. This means the card is fully routed and we
can let the core take care of disconnecting non-connected pins.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/omap/n810.c

index 617eae37581c2f9e40cd2abf762c9da84e92d7ea..dcb5336b569815b8958e2ecb572710930ca425cb 100644 (file)
@@ -254,24 +254,6 @@ static const struct snd_kcontrol_new aic33_n810_controls[] = {
                     n810_get_input, n810_set_input),
 };
 
-static int n810_aic33_init(struct snd_soc_pcm_runtime *rtd)
-{
-       struct snd_soc_codec *codec = rtd->codec;
-       struct snd_soc_dapm_context *dapm = &codec->dapm;
-
-       /* Not connected */
-       snd_soc_dapm_nc_pin(dapm, "MONO_LOUT");
-       snd_soc_dapm_nc_pin(dapm, "HPLCOM");
-       snd_soc_dapm_nc_pin(dapm, "HPRCOM");
-       snd_soc_dapm_nc_pin(dapm, "MIC3L");
-       snd_soc_dapm_nc_pin(dapm, "MIC3R");
-       snd_soc_dapm_nc_pin(dapm, "LINE1R");
-       snd_soc_dapm_nc_pin(dapm, "LINE2L");
-       snd_soc_dapm_nc_pin(dapm, "LINE2R");
-
-       return 0;
-}
-
 /* Digital audio interface glue - connects codec <--> CPU */
 static struct snd_soc_dai_link n810_dai = {
        .name = "TLV320AIC33",
@@ -282,7 +264,6 @@ static struct snd_soc_dai_link n810_dai = {
        .codec_dai_name = "tlv320aic3x-hifi",
        .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
                   SND_SOC_DAIFMT_CBM_CFM,
-       .init = n810_aic33_init,
        .ops = &n810_ops,
 };
 
@@ -299,6 +280,7 @@ static struct snd_soc_card snd_soc_n810 = {
        .num_dapm_widgets = ARRAY_SIZE(aic33_dapm_widgets),
        .dapm_routes = audio_map,
        .num_dapm_routes = ARRAY_SIZE(audio_map),
+       .fully_routed = true,
 };
 
 static struct platform_device *n810_snd_device;