linux/include/uapi/sound/sof
Jyri Sarha ca5ce0caa6
ASoC: SOF: ipc4/intel: Add support for chained DMA
Add logic for setting up and tearing down chained DMA connections.

Since pipelines are not used, all the logic to set the pipeline states
can be bypassed, with only the DMA programming sequences remaining. In
addition the same format needs to be used for host- and link-DMA,
without the usual fixup to use the S32_LE format on the link.

Note however that for convenience and compatibility with existing
definitions, the topology relies on the concept of pipelines with a
'USE_CHAIN_DMA' token indicating that all the logic shall be bypassed.

Unlike 'normal' ALSA sequences, the chain DMA is not programmed in
hw_params/hw_free. The IPC message to set-up and tear-down chained DMA
are sent in sof_ipc4_trigger_pipelines(), but the contents prepared
earlier.

Chained DMA is only supported by the Intel HDA DAI for now, and only
S16_LE and S32_LE formats are supported for now.

Signed-off-by: Jyri Sarha <jyri.sarha@intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230321092654.7292-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-21 12:13:31 +00:00
..
abi.h ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use 2023-03-13 14:06:51 +00:00
fw.h ASoC: SOF: use __u32 instead of uint32_t in uapi headers 2019-07-22 13:01:06 +01:00
header.h ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use 2023-03-13 14:06:51 +00:00
tokens.h ASoC: SOF: ipc4/intel: Add support for chained DMA 2023-03-21 12:13:31 +00:00