ASoC: Intel: boards: Add IV feedback route for nau88l25_ssm4567 machine
authorSathya Prakash M R <sathya.prakash.m.r@intel.com>
Wed, 24 Feb 2016 05:57:41 +0000 (11:27 +0530)
committerMark Brown <broonie@kernel.org>
Wed, 24 Feb 2016 08:29:47 +0000 (17:29 +0900)
SSM4567 supports IV feedback for feedback to the speaker
protection algorithm

Signed-off-by: Sathya Prakash M R <sathya.prakash.m.r@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/skl_nau88l25_ssm4567.c

index ccc3d4a..68caf24 100644 (file)
@@ -133,6 +133,9 @@ static const struct snd_soc_dapm_route skylake_map[] = {
        { "Right Playback", NULL, "ssp0 Tx"},
        { "ssp0 Tx", NULL, "codec0_out"},
 
+       /* IV feedback path */
+       { "codec0_lp_in", NULL, "ssp0 Rx"},
+
        { "Playback", NULL, "ssp1 Tx"},
        { "ssp1 Tx", NULL, "codec1_out"},
 
@@ -154,6 +157,14 @@ static const struct snd_soc_dapm_route skylake_map[] = {
        { "Headset Mic", NULL, "Platform Clock" },
 };
 
+static const struct snd_soc_pcm_stream skl_ssm4567_loop_params = {
+       .formats = SNDRV_PCM_FMTBIT_S24_LE,
+       .rate_min = 48000,
+       .rate_max = 48000,
+       .channels_min = 4,
+       .channels_max = 4,
+};
+
 static struct snd_soc_codec_conf ssm4567_codec_conf[] = {
        {
                .dev_name = "i2c-INT343B:00",
@@ -499,6 +510,16 @@ static struct snd_soc_dai_link skylake_dais[] = {
                .nonatomic = 1,
                .dynamic = 1,
        },
+       /* Codec-codec link */
+       {
+               .name = "Skylake IV loop",
+               .stream_name = "SKL IV Loop",
+               .cpu_dai_name = "SSP0 Pin",
+               .platform_name = "0000:00:1f.3",
+               .codecs = ssm4567_codec_components,
+               .num_codecs = ARRAY_SIZE(ssm4567_codec_components),
+               .params = &skl_ssm4567_loop_params,
+       },
 
        /* Back End DAI links */
        {