diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2024-10-21 02:59:20 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2024-10-23 15:02:01 +0300 |
commit | 0f77c88f0e3a3945c328bbb9a9e3c4b5826e8fe0 (patch) | |
tree | c84fea2afb12d567947895ace5ca0bc14dd78c90 /sound/soc | |
parent | b6b8caf6470b9793ae4b66a95c742a1c97ece748 (diff) | |
download | linux-0f77c88f0e3a3945c328bbb9a9e3c4b5826e8fe0.tar.xz |
ASoC: soc-compress: remove dpcm_xxx flags
dpcm_xxx flags are no longer needed. It converts dpcm_xxx flag to
xxx_only if needed.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://patch.msgid.link/87a5ey9vhj.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/soc-compress.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c index e692aa3b8b22..a0c55246f424 100644 --- a/sound/soc/soc-compress.c +++ b/sound/soc/soc-compress.c @@ -606,12 +606,19 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) return -ENOMEM; if (rtd->dai_link->dynamic) { + int playback = 1; + int capture = 1; + + if (rtd->dai_link->capture_only) + playback = 0; + if (rtd->dai_link->playback_only) + capture = 0; + snprintf(new_name, sizeof(new_name), "(%s)", rtd->dai_link->stream_name); ret = snd_pcm_new_internal(rtd->card->snd_card, new_name, num, - rtd->dai_link->dpcm_playback, - rtd->dai_link->dpcm_capture, &be_pcm); + playback, capture, &be_pcm); if (ret < 0) { dev_err(rtd->card->dev, "Compress ASoC: can't create compressed for %s: %d\n", @@ -624,9 +631,9 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) rtd->pcm = be_pcm; rtd->fe_compr = 1; - if (rtd->dai_link->dpcm_playback) + if (playback) be_pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream->private_data = rtd; - if (rtd->dai_link->dpcm_capture) + if (capture) be_pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream->private_data = rtd; memcpy(compr->ops, &soc_compr_dyn_ops, sizeof(soc_compr_dyn_ops)); } else { |