[alsa-devel] [PATCH] ASoC: compress: Set reasonable compress id string
Donglin Peng
dolinux.peng at gmail.com
Tue Aug 8 04:59:23 CEST 2017
For dynamic compress rtd, the codec_dai may not have any
actual meaning(like snd-soc-dummy-dai), so compress id
can just use the value of dai_link->stream_name. But for
others, its codec_dai has actual meaning, so compress id
can include codec_dai name.
Signed-off-by: pengdonglin <pengdonglin137 at 163.com>
---
sound/soc/soc-compress.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c
index 206f36bf43e8..589d6412c9f0 100644
--- a/sound/soc/soc-compress.c
+++ b/sound/soc/soc-compress.c
@@ -737,9 +737,6 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime
*rtd, int num)
}
/* check client and interface hw capabilities */
- snprintf(new_name, sizeof(new_name), "%s %s-%d",
- rtd->dai_link->stream_name, codec_dai->name, num);
-
if (codec_dai->driver->playback.channels_min)
playback = 1;
if (codec_dai->driver->capture.channels_min)
@@ -797,19 +794,18 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime
*rtd, int num)
else if (rtd->dai_link->dpcm_capture)
be_pcm->streams[SNDRV_PCM_STRE
AM_CAPTURE].substream->private_data = rtd;
memcpy(compr->ops, &soc_compr_dyn_ops,
sizeof(soc_compr_dyn_ops));
- } else
+ } else {
+ snprintf(new_name, sizeof(new_name), "%s %s-%d",
+ rtd->dai_link->stream_name, codec_dai->name, num);
+
memcpy(compr->ops, &soc_compr_ops, sizeof(soc_compr_ops));
+ }
/* Add copy callback for not memory mapped DSPs */
if (platform->driver->compr_ops && platform->driver->compr_ops->c
opy)
compr->ops->copy = soc_compr_copy;
mutex_init(&compr->lock);
-
- snprintf(new_name, sizeof(new_name), "%s %s-%d",
- rtd->dai_link->stream_name,
- rtd->codec_dai->name, num);
-
ret = snd_compress_new(rtd->card->snd_card, num, direction,
new_name, compr);
if (ret < 0) {
--
2.11.0
More information about the Alsa-devel
mailing list