diff options
author | Chancel Liu <chancel.liu@nxp.com> | 2022-10-28 16:27:50 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-11-01 12:15:40 +0000 |
commit | 77a7a6e9a94df0ac7ba46677b5ce4a743a931fce (patch) | |
tree | db149f85912bccd211155952e2a948dbb6490f2c /sound/soc/fsl/fsl_micfil.c | |
parent | a10a52541f644a1fdf8876d474f31a54c4142ccc (diff) |
ASoC: fsl_micfil: Add support when using eDMA
On i.MX93 platform MICFIL uses eDMA. The maxburst should be set to the
number of channels in eDMA multiple FIFO mode.
Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com>
Link: https://lore.kernel.org/r/20221028082750.991822-4-chancel.liu@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/fsl/fsl_micfil.c')
-rw-r--r-- | sound/soc/fsl/fsl_micfil.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/fsl/fsl_micfil.c b/sound/soc/fsl/fsl_micfil.c index b8a9504441df..22e75c14cac4 100644 --- a/sound/soc/fsl/fsl_micfil.c +++ b/sound/soc/fsl/fsl_micfil.c @@ -63,6 +63,7 @@ struct fsl_micfil_soc_data { unsigned int fifo_depth; unsigned int dataline; bool imx; + bool use_edma; u64 formats; }; @@ -88,6 +89,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx93 = { .fifo_depth = 32, .dataline = 0xf, .formats = SNDRV_PCM_FMTBIT_S32_LE, + .use_edma = true, }; static const struct of_device_id fsl_micfil_dt_ids[] = { @@ -690,6 +692,8 @@ static int fsl_micfil_hw_params(struct snd_pcm_substream *substream, micfil->sdmacfg.n_fifos_src = channels; micfil->sdmacfg.sw_done = true; micfil->dma_params_rx.maxburst = channels * MICFIL_DMA_MAXBURST_RX; + if (micfil->soc->use_edma) + micfil->dma_params_rx.maxburst = channels; return 0; } |