ASoC: soc-compress: remove dpcm_xxx flags
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Sun, 20 Oct 2024 23:59:20 +0000 (23:59 +0000)
committerMark Brown <broonie@kernel.org>
Wed, 23 Oct 2024 12:02:01 +0000 (13:02 +0100)
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>
sound/soc/soc-compress.c

index e692aa3..a0c5524 100644 (file)
@@ -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 {