dmaengine: bcm2835: add slave_sg support to bcm2835-dma
authorMartin Sperl <kernel@martin.sperl.org>
Wed, 16 Mar 2016 19:25:01 +0000 (12:25 -0700)
committerVinod Koul <vinod.koul@intel.com>
Fri, 15 Apr 2016 04:27:22 +0000 (09:57 +0530)
commit388cc7a281c06e484afcc3c5125b3271316209ef
treedc56a3a11f76a30547dd9c04a99026aeb6672a80
parent4087412258276be37c5660fc6caf5d4e08920193
dmaengine: bcm2835: add slave_sg support to bcm2835-dma

Add slave_sg support to bcm2835-dma using shared allocation
code for bcm2835_desc and DMA-control blocks already used by
dma_cyclic.

Note that bcm2835_dma_callback had to get modified to support
both modes of operation (cyclic and non-cyclic).

Tested using:
* Hifiberry I2S card (using cyclic DMA)
* fb_st7735r SPI-framebuffer (using slave_sg DMA via spi-bcm2835)
playing BigBuckBunny for audio and video.

Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/bcm2835-dma.c