]> 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)
commit2f78f05cd86d68d1c60abbad41a612a69f8b06c9
tree8d0edf8188b518cede2a4ef70eb53b5ad2f2d14d
parente8cc982cf1c90650ebc464568329ec253e44e310
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