]> www.infradead.org Git - nvme.git/commit
ASoC: fsl: fsl_qmc_audio: Identify the QMC channel involved in completion routines
authorHerve Codina <herve.codina@bootlin.com>
Mon, 1 Jul 2024 11:30:31 +0000 (13:30 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 4 Jul 2024 11:24:55 +0000 (12:24 +0100)
commit5e51a1f9dfd90de6e44cfb5340d48263f9e8f8d8
tree7adc4193ffc4c0bf95557ebff8368c71b6352d69
parent42212b2ce8b1182d536452eee2880d2de7cce059
ASoC: fsl: fsl_qmc_audio: Identify the QMC channel involved in completion routines

The current QMC audio driver uses only one QMC channel per DAI. The
context used by QMC channel transfer (read and write) completion
routines does not contains any QMC channel and the only one available
per DAI is used to schedule the next transfer.
This works pretty well with only one QMC channel per DAI.

The future support for non-inlerleave mode will use several QMC channel
per DAI. In that case, QMC channel transfer completion routines need to
identify the QMC channel related to the completion.

In order to fill this lack, even if identifying the current QMC channel
among several QMC channels is not needed for the current code, add one
indirection level and introduce the qmc_dai_chan data structrure.
This structure contains the QMC channel involved in the completion and
refererences to the runtime context (capture and playback) used by the
DAI.

Signed-off-by: Herve Codina <herve.codina@bootlin.com>
Link: https://patch.msgid.link/20240701113038.55144-5-herve.codina@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/fsl_qmc_audio.c