[PATCH 1/4] ASoC: soc-pcm: dpcm: fix playback/capture checks
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Fri Jul 17 19:13:14 CEST 2020
> Commit 25612477d20b ("ASoC: soc-dai: set dai_link dpcm_ flags with a
> helper") makes things worse (for me) by requiring all the elements on
> the link to support the stream direction for the direction to be enabled.
>
> This breaks platforms where there is multiple codecs with different
> capabilities on a link. For example, we may have 2 codecs on a link, one
> doing playback, the other capture. This is the case on several Amlogic
> platforms.
>
> With the new meaning of those flag, the card driver has to set something
> that ASoC core will also compute on its own, and verify it agrees with
> the card. This is redundant.
> What is the point of this ? Can't we just cut the middle man then ?
>
> The old meaning at least allowed to pass the additional information that
> a direction was to be forcefully disabled. This is also redundant with
> capture_only/playback_only though ...
My plan was to remove two of the 4 flags after all configurations were
checked.
> Can we revert this change until we figure out to do with those flags ?
>
> I could propose a patch to move on but I'm not entirely clear what it kind
> of restriction we were trying to put on Multi-CPU links
>
> IMO, on a Multi-CPU/Multi-Codec link, we should allow the direction as
> long as at least one CPU and one Codec on the link are capable of
> handling the direction (not all of them, as it seems to be set now)
You have a valid point Jerome. I must admit I was looking at TDM
configurations, where we do want all DAIs in the same dailink to be
consistent.
But when I checked older code there is indeed a precedent for some
KabyLake platforms with an amplifier on playback and a microphone codec
on capture for the same dailink.
I think your proposal of checking that at least one DAI matches the
dailink capabilities, and conversely changing the helper to set the
properties if one or more dais support a direction smay indeed be required.
If this was a feature and not a bug to have different capabilities on
the same link so be it. Mark, do you concur?
More information about the Alsa-devel
mailing list