OSDN Git Service

ASoC: bdw-rt5677: Add a DAI link for rt5677 SPI PCM device
authorBen Zhang <benzh@chromium.org>
Wed, 6 Nov 2019 01:13:27 +0000 (17:13 -0800)
committerMark Brown <broonie@kernel.org>
Mon, 11 Nov 2019 13:01:59 +0000 (13:01 +0000)
This link is needed for the RT5677 DSP to do hotwording

Signed-off-by: Ben Zhang <benzh@chromium.org>
Signed-off-by: Curtis Malainey <cujomalainey@chromium.org>
Link: https://lore.kernel.org/r/20191106011335.223061-3-cujomalainey@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bdw-rt5677.c

index 4a4d335..eeb9a11 100644 (file)
@@ -74,6 +74,7 @@ static const struct snd_soc_dapm_route bdw_rt5677_map[] = {
        /* CODEC BE connections */
        {"SSP0 CODEC IN", NULL, "AIF1 Capture"},
        {"AIF1 Playback", NULL, "SSP0 CODEC OUT"},
+       {"DSP Capture", NULL, "DSP Buffer"},
 };
 
 static const struct snd_kcontrol_new bdw_rt5677_controls[] = {
@@ -258,6 +259,12 @@ SND_SOC_DAILINK_DEF(platform,
 SND_SOC_DAILINK_DEF(be,
        DAILINK_COMP_ARRAY(COMP_CODEC("i2c-RT5677CE:00", "rt5677-aif1")));
 
+/* Wake on voice interface */
+SND_SOC_DAILINK_DEFS(dsp,
+       DAILINK_COMP_ARRAY(COMP_CPU("spi-RT5677AA:00")),
+       DAILINK_COMP_ARRAY(COMP_CODEC("i2c-RT5677CE:00", "rt5677-dspbuffer")),
+       DAILINK_COMP_ARRAY(COMP_PLATFORM("spi-RT5677AA:00")));
+
 static struct snd_soc_dai_link bdw_rt5677_dais[] = {
        /* Front End DAI links */
        {
@@ -276,6 +283,13 @@ static struct snd_soc_dai_link bdw_rt5677_dais[] = {
                SND_SOC_DAILINK_REG(fe, dummy, platform),
        },
 
+       /* Non-DPCM links */
+       {
+               .name = "Codec DSP",
+               .stream_name = "Wake on Voice",
+               SND_SOC_DAILINK_REG(dsp),
+       },
+
        /* Back End DAI links */
        {
                /* SSP0 - Codec */