]> git.baikalelectronics.ru Git - kernel.git/commit
dmaengine: imx-sdma: Add FIFO stride support for multi FIFO script
authorShengjiu Wang <shengjiu.wang@nxp.com>
Thu, 7 Jul 2022 03:00:29 +0000 (11:00 +0800)
committerVinod Koul <vkoul@kernel.org>
Thu, 21 Jul 2022 12:58:35 +0000 (18:28 +0530)
commit7423b23fd814d7f25190224e534477b39c4051e5
tree8d0edf8188b518cede2a4ef70eb53b5ad2f2d14d
parent2930aeff38e82c2aae8729f5f056c2fad612c775
dmaengine: imx-sdma: Add FIFO stride support for multi FIFO script

The peripheral may have several FIFOs, but some case just select
some FIFOs from them for data transfer, which means FIFO0 and FIFO2
may be selected. So add FIFO address stride support, 0 means all FIFOs
are continuous, 1 means 1 word stride between FIFOs. All stride between
FIFOs should be same.

Another option words_per_fifo means how many audio channel data copied
to one FIFO one time, 1 means one channel per FIFO, 2 means 2 channels
per FIFO.

If 'n_fifos_src =  4' and 'words_per_fifo = 2', it means the first two
words(channels) fetch from FIFO0 and then jump to FIFO1 for next two words,
and so on after the last FIFO3 fetched, roll back to FIFO0.

Signed-off-by: Joy Zou <joy.zou@nxp.com>
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1657162829-9273-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/imx-sdma.c
include/linux/dma/imx-dma.h