diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2012-07-05 12:29:42 +0200 |
---|---|---|
committer | Vinod Koul <vinod.koul@linux.intel.com> | 2012-07-20 11:28:20 +0530 |
commit | 1ff8df4f5388ad66bd7d0199b5839a2e3345c055 (patch) | |
tree | c6d80a09a4722c8c39cea58b80a771e34594b74b /include/linux/shdma-base.h | |
parent | c2cdb7e4d16394fc51dc5c2c5b3e7c3733bdfaac (diff) | |
download | op-kernel-dev-1ff8df4f5388ad66bd7d0199b5839a2e3345c055.zip op-kernel-dev-1ff8df4f5388ad66bd7d0199b5839a2e3345c055.tar.gz |
dma: sh: provide a migration path for slave drivers to stop using .private
This patch extends the sh dmaengine driver to support the preferred channel
selection and configuration method, instead of using the "private" field
from struct dma_chan. We add a standard filter function to be used by
slave drivers instead of implementing their own ones, and add support for
the DMA_SLAVE_CONFIG control operation, which must accompany the new
channel selection method. We still support the legacy .private channel
allocation method to cater for a smooth driver migration.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
[applied a trvial checkpath fix]
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Diffstat (limited to 'include/linux/shdma-base.h')
-rw-r--r-- | include/linux/shdma-base.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/shdma-base.h b/include/linux/shdma-base.h index 6263ad2..93f9821 100644 --- a/include/linux/shdma-base.h +++ b/include/linux/shdma-base.h @@ -93,7 +93,7 @@ struct shdma_ops { dma_addr_t (*slave_addr)(struct shdma_chan *); int (*desc_setup)(struct shdma_chan *, struct shdma_desc *, dma_addr_t, dma_addr_t, size_t *); - int (*set_slave)(struct shdma_chan *, int); + int (*set_slave)(struct shdma_chan *, int, bool); void (*setup_xfer)(struct shdma_chan *, int); void (*start_xfer)(struct shdma_chan *, struct shdma_desc *); struct shdma_desc *(*embedded_desc)(void *, int); |