On Thu, Jul 30, 2020 at 11:04:53AM +0200, Jerome Brunet wrote:
Carrying redundant information makes things complex and error prone. If you really want to update this, here is another proposition:
- Removing snd_soc_dai_link_set_capabilities()
- Removing both flags completely
- Let ASoC figure out what is needed based on the components present.
My understanding is that that was broadly where we were headed with this stuff - snd_soc_dai_link_set_capabilities() is trying to figure things out from the components already, it's storing the flags as a cache but could be modified so we use it every time we need a value.
Cc: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com Signed-off-by: Jerome Brunet jbrunet@baylibre.com
Hi Mark,
Because b73287f0b0745 ('ASoC: soc-pcm: dpcm: fix playback/capture checks') introduced more than one problem, the change "ASoC: core: use less strict tests for dailink capabilities" [0] is still necessary but the change of semantic remains a problem with it.
This patch applies on top of it.
sound/soc/soc-pcm.c | 14 -------------- 1 file changed, 14 deletions(-)
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c index 00ac1cbf6f88..2e205b738eae 100644 --- a/sound/soc/soc-pcm.c +++ b/sound/soc/soc-pcm.c @@ -2749,13 +2749,6 @@ int soc_new_pcm(struct snd_soc_pcm_runtime *rtd, int num) break; } }
if (!playback) {
dev_err(rtd->card->dev,
"No CPU DAIs support playback for stream %s\n",
rtd->dai_link->stream_name);
return -EINVAL;
} if (rtd->dai_link->dpcm_capture) { stream = SNDRV_PCM_STREAM_CAPTURE;}
@@ -2766,13 +2759,6 @@ int soc_new_pcm(struct snd_soc_pcm_runtime *rtd, int num) break; } }
if (!capture) {
dev_err(rtd->card->dev,
"No CPU DAIs support capture for stream %s\n",
rtd->dai_link->stream_name);
return -EINVAL;
} } else { /* Adapt stream for codec2codec links */}