As discussed in [1], ASoC core supports multi codec DAIs on a DAI link. However it does not do so for CPU DAIs.
So, add support for multi CPU DAIs on a DAI Link by adding multi CPU DAI in Card instantiation, suspend and resume functions, PCM ops, stream handling functions and DAPM.
[1]: https://www.spinics.net/lists/alsa-devel/msg71369.html
changes in v4: - fix "rtd->num_codecs > 1" error in ASoC: Add Multi CPU DAI support - split "ASoC: pcm: check if cpu DAI support the given stream" from "ASoC: Add multiple CPU DAI support for PCM ops" - add helper "ASoC: Add dapm_add_valid_dai_widget helper" for "ASoC: Add multiple CPU DAI support in DAPM"
Bard Liao (2): ASoC: return error if the function is not support multi cpu yet. ASoC: pcm: check if cpu DAI support the given stream
Shreyas NC (4): ASoC: Add initial support for multiple CPU DAIs ASoC: Add multiple CPU DAI support for PCM ops ASoC: Add dapm_add_valid_dai_widget helper ASoC: Add multiple CPU DAI support in DAPM
include/sound/soc.h | 15 + sound/soc/soc-compress.c | 5 +- sound/soc/soc-core.c | 205 +++++----- sound/soc/soc-dapm.c | 133 ++++--- sound/soc/soc-generic-dmaengine-pcm.c | 18 + sound/soc/soc-pcm.c | 554 ++++++++++++++++++-------- 6 files changed, 615 insertions(+), 315 deletions(-)