From 644473b181f0f310e428301a2ed459f912eec7ea Mon Sep 17 00:00:00 2001

Peter Ujfalusi peter.ujfalusi at linux.intel.com
Fri Jan 27 13:00:13 CET 2023


Hi,

The following series will enable multi-stream support for playback and capture
streams.
Currently only a single PCM can be connected to a DAI, with the multi-stream
support it is possible to connect multiple PCMs to a single DAI.

To achieve this we need to make sure that DAIs/AIF are only set up once since
other stream could be connected to it later.

We also need to introduce reference or use counting for widgets to make sure
that they are not going to be destroyed while other streams are still using
them.

With the multi-stream support we also need to extend our current locking scheme
which worked well for simple paths.

The first patch was sent to the mailing list, but it is not yet applied and I
have included in this series as it is a direct dependency:
https://lore.kernel.org/alsa-devel/20230117121615.25690-1-peter.ujfalusi@linux.intel.com/

Regards,
Peter
---
Peter Ujfalusi (3):
  ASoC: SOF: Avoid double decrementing use_count in sof_widget_setup on
    error
  ASoC: SOF: Protect swidget->use_count with mutex for kcontrol access
    race
  ASoC: SOF: ipc4-pcm: Do not run the trigger pipelines if no spipe is
    stored

Ranjani Sridharan (15):
  ASoC: SOF: ipc4-topology: No need to unbind routes within a pipeline
  ASoC: soc-pcm: Export widget_in_list()
  ASoC: SOF: sof-audio: Set up/free DAI/AIF widgets only once
  ASoC: SOF: sof-audio: Only process widgets in the connected widget
    list
  ASoC: SOF: pcm: do not free widgets during suspend trigger
  ASoC: SOF: topology: Set IPC-specific trigger order for DAI links
  ASoC: SOF: Introduce PCM setup/free PCM IPC ops
  ASoC: SOF: ipc4-pcm: Define pcm_setup/free ops
  ASoC: SOF: ipc4: Add flag to skip triggering pipelines during FE DAI
    trigger
  ASoC: SOF: sof-audio: Populate the PCM stream pipeline_info
  ASoC: SOF: ipc4-pcm: Use the PCM stream's pipeline_info during trigger
  ASoC: SOF: Introduce struct snd_sof_pipeline
  ASoC: SOF: ipc4-pcm: Rename 'data' variable to trigger_list
  ASoC: SOF: ipc4-pcm: Implement pipeline trigger reference counting
  ASoC: SOF: ipc4-topology: Protect pipeline free with mutex

 include/sound/soc-dpcm.h        |   2 +
 include/sound/sof/ipc4/header.h |   3 +
 sound/soc/soc-pcm.c             |   3 +-
 sound/soc/sof/core.c            |   1 +
 sound/soc/sof/intel/hda-dai.c   |  92 ++-------
 sound/soc/sof/ipc3-control.c    |  46 +++--
 sound/soc/sof/ipc3-topology.c   |  32 ++-
 sound/soc/sof/ipc4-control.c    |  33 ++-
 sound/soc/sof/ipc4-pcm.c        | 343 +++++++++++++++++++++++++-------
 sound/soc/sof/ipc4-priv.h       |   2 +
 sound/soc/sof/ipc4-topology.c   |  48 ++++-
 sound/soc/sof/ipc4-topology.h   |  12 ++
 sound/soc/sof/ipc4.c            |   2 +
 sound/soc/sof/pcm.c             |   5 +-
 sound/soc/sof/sof-audio.c       | 226 ++++++++++++++-------
 sound/soc/sof/sof-audio.h       |  54 ++++-
 sound/soc/sof/sof-priv.h        |   1 +
 sound/soc/sof/topology.c        | 114 +++++++----
 18 files changed, 714 insertions(+), 305 deletions(-)

-- 
2.39.1



More information about the Alsa-devel mailing list