dmaengine: pl330: redefine the cyclic transfer
authorHuibin Hong <huibin.hong@rock-chips.com>
Fri, 9 Jun 2017 07:47:47 +0000 (15:47 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Mon, 12 Jun 2017 03:01:10 +0000 (11:01 +0800)
commit5f638786e66089344c9cf594b81fbf02cd794f15
treeca99f628d53f40973ae81df6c1f87f61b61b8ba5
parent01e1edeadc6fc24d374c4379a6a7cf5ca5e6b7cb
dmaengine: pl330: redefine the cyclic transfer

dmaengine_prep_dma_cyclic, to use buf_addr with size buf_len,
generate an interrupt every period_len. But DMA must restart
every period_len, it may be blocked. If i2s use it, it may
cause sound break. Infiniteloop is helpful to solve this
issue. In infiniteloop mode, when DMA transfers all buf_len
data, it goes back to the start of buf_addr and continue to
transfer endless.

Change-Id: Ibbc92c416d0a9dd58633e7991176c86300c3da98
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
drivers/dma/pl330.c