Re: [PATCH v4 10/23] ASoC: simple-card: Wrong daifmt for CPU end of DPCM DAI link

From: Kuninori Morimoto
Date: Mon Jun 29 2020 - 20:56:21 EST



Hi Sameer

> snd_soc_runtime_set_dai_fmt() {
> ...
>
> if (cpu_dai->component->driver->non_legacy_dai_naming)
> fmt = inv_dai_fmt;
>
> ...
> }
>
> Above flips polarity for 'cpu_dai' if 'non_legacy_dai_naming' flag is set.
>
> 1. Hence example mentioned in the commit message does not work if my 'cpu_dai'
> driver does not have this flag set.

?
Do you want fo flip it ? or don't flip?
It is for Codec <-> Codec connection.

> 2. While it is true that we consider reference of 'Codec' mode for simple CPU<->
> Codec DAI links, for DPCM this does not seem flexible. For DPCM links CPU and
> Codec are not directly connected (CPU<->Dummy or Dummy<->Codec). Please
> consider, for example, if the DAI link has multiple CPU/Codecs. Which 'Codec'
> reference needs to be considered? Isn't it better if we explicitly mention which
> DAI we want to operate as 'Master'?

I think Lars-Peter has (had ?) plan for this SND_SOC_DAIFMT_CBx_CFx
flag flexibility ? Yes maybe it is needed for multi CPU/Codec system.

Thank you for your help !!

Best regards
---
Kuninori Morimoto