ASoC: Intel: Update ignore suspend for bxt-rt298
authorSenthilnathan Veppur <senthilnathanx.veppur@intel.com>
Mon, 13 Jun 2016 12:29:00 +0000 (17:59 +0530)
committerMark Brown <broonie@kernel.org>
Tue, 14 Jun 2016 13:59:33 +0000 (14:59 +0100)
Capture from DMIC requires that we ignore the suspend, so mark
these as ignore_suspend in bxt-rt298 machine.

Signed-off-by: Senthilnathan Veppur <senthilnathanx.veppur@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bxt_rt298.c

index 10eb5cbf57e44834f78f7bafdc1a9e9d70da655a..8b956500414bac6b5ce9940ee825ed862034b542 100644 (file)
@@ -106,6 +106,17 @@ static const struct snd_soc_dapm_route broxton_rt298_map[] = {
 
 };
 
+static int broxton_rt298_fe_init(struct snd_soc_pcm_runtime *rtd)
+{
+       struct snd_soc_dapm_context *dapm;
+       struct snd_soc_component *component = rtd->cpu_dai->component;
+
+       dapm = snd_soc_component_get_dapm(component);
+       snd_soc_dapm_ignore_suspend(dapm, "Reference Capture");
+
+       return 0;
+}
+
 static int broxton_rt298_codec_init(struct snd_soc_pcm_runtime *rtd)
 {
        struct snd_soc_codec *codec = rtd->codec;
@@ -120,6 +131,9 @@ static int broxton_rt298_codec_init(struct snd_soc_pcm_runtime *rtd)
                return ret;
 
        rt298_mic_detect(codec, &broxton_headset);
+
+       snd_soc_dapm_ignore_suspend(&rtd->card->dapm, "SoC DMIC");
+
        return 0;
 }
 
@@ -267,6 +281,7 @@ static struct snd_soc_dai_link broxton_rt298_dais[] = {
                .dynamic = 1,
                .codec_name = "snd-soc-dummy",
                .codec_dai_name = "snd-soc-dummy-dai",
+               .init = broxton_rt298_fe_init,
                .trigger = {SND_SOC_DPCM_TRIGGER_POST, SND_SOC_DPCM_TRIGGER_POST},
                .dpcm_playback = 1,
                .ops = &broxton_rt286_fe_ops,