diff options
author | Kai Chieh Chuang <kaichieh.chuang@mediatek.com> | 2018-05-28 04:18:19 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2018-05-29 15:56:38 +0200 |
commit | 99bcedbdebc57fe5d02fb470b7265f2208c2cf96 (patch) | |
tree | 258e0b2a185b56b470fee39e01b421d813beb180 /sound/soc/soc-pcm.c | |
parent | ASoC: dpcm: fix BE dai not hw_free and shutdown (diff) | |
download | linux-99bcedbdebc57fe5d02fb470b7265f2208c2cf96.tar.xz linux-99bcedbdebc57fe5d02fb470b7265f2208c2cf96.zip |
ASoC: dpcm: symmetry constraint on FE substream
We should set BE symmetric constraint on FE substream.
in case one BE is used by two FE1/FE2,
the first BE runtime will use FE1's substream->runtime.
hence the FE1's will be constrained by BE symmetry property.
Though, second FE2 call dpcm_apply_symmetry,
the be_substream->runtime == FE1's substream->runtime.
The FE2's substream->runtime will not be constrained
by BE's symmetry property.
Signed-off-by: KaiChieh Chuang <kaichieh.chuang@mediatek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-pcm.c')
-rw-r--r-- | sound/soc/soc-pcm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c index 2d846b3dd70c..0e2b2c6c60bd 100644 --- a/sound/soc/soc-pcm.c +++ b/sound/soc/soc-pcm.c @@ -1779,14 +1779,15 @@ static int dpcm_apply_symmetry(struct snd_pcm_substream *fe_substream, /* Symmetry only applies if we've got an active stream. */ if (rtd->cpu_dai->active) { - err = soc_pcm_apply_symmetry(be_substream, rtd->cpu_dai); + err = soc_pcm_apply_symmetry(fe_substream, + rtd->cpu_dai); if (err < 0) return err; } for (i = 0; i < rtd->num_codecs; i++) { if (rtd->codec_dais[i]->active) { - err = soc_pcm_apply_symmetry(be_substream, + err = soc_pcm_apply_symmetry(fe_substream, rtd->codec_dais[i]); if (err < 0) return err; |