diff options
author | Emil Medve <Emilian.Medve@Freescale.com> | 2014-01-06 18:52:55 (GMT) |
---|---|---|
committer | Emilian Medve <Emilian.Medve@freescale.com> | 2014-01-07 06:46:12 (GMT) |
commit | 16a66b4f94e0bdf0befc116d1acfcde7e4295000 (patch) | |
tree | 006ae0e85c0e352273834c3c2e12206e80656c01 /drivers/dma | |
parent | 0cf5a7654fce3fb23f19d1b5997d4d8062738b73 (diff) | |
download | linux-fsl-qoriq-16a66b4f94e0bdf0befc116d1acfcde7e4295000.tar.xz |
dma/fsl_raid: DMA unmapping is now handled in the DMA core code
As per '54f8d50 dmaengine: remove DMA unmap from drivers' and
'0776ae7 dmaengine: remove DMA unmap flags'
drivers/dma/fsl_raid.c: In function ‘re_jr_unmap_dest_src’:
drivers/dma/fsl_raid.c:135:16: error: ‘DMA_COMPL_SKIP_DEST_UNMAP’ undeclared (first use in this function)
if (!(flags & DMA_COMPL_SKIP_DEST_UNMAP)) {
^
drivers/dma/fsl_raid.c:135:16: note: each undeclared identifier is reported only once for each function it appears in
drivers/dma/fsl_raid.c:147:16: error: ‘DMA_COMPL_SKIP_SRC_UNMAP’ undeclared (first use in this function)
if (!(flags & DMA_COMPL_SKIP_SRC_UNMAP)) {
^
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Change-Id: Ibfae0ded94c550ec83c300ffbbc9055803f2f7d2
Reviewed-on: http://git.am.freescale.net:8181/7705
Reviewed-by: Xuelin Shi <b29237@freescale.com>
Reviewed-by: Emilian Medve <Emilian.Medve@freescale.com>
Tested-by: Emilian Medve <Emilian.Medve@freescale.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/fsl_raid.c | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/drivers/dma/fsl_raid.c b/drivers/dma/fsl_raid.c index f2178f7..df3c9da 100644 --- a/drivers/dma/fsl_raid.c +++ b/drivers/dma/fsl_raid.c @@ -114,47 +114,6 @@ static dma_cookie_t re_jr_tx_submit(struct dma_async_tx_descriptor *tx) return cookie; } -static void re_jr_unmap_dest_src(struct fsl_re_dma_async_tx_desc *desc) -{ - int i, j; - struct cmpnd_frame *cf; - dma_addr_t dest1 = 0, dest2 = 0, src; - struct device *dev; - enum dma_ctrl_flags flags; - enum dma_data_direction dir; - - cf = desc->cf_addr; - dest1 = cf[1].address; - j = 2; - if (desc->dest_cnt == 2) { - dest2 = cf[2].address; - j = 3; - } - dev = desc->jr->chan.device->dev; - flags = desc->async_tx.flags; - if (!(flags & DMA_COMPL_SKIP_DEST_UNMAP)) { - if (desc->cdb_opcode == RE_MOVE_OPCODE) - dir = DMA_FROM_DEVICE; - else - dir = DMA_BIDIRECTIONAL; - - dma_unmap_page(dev, dest1, desc->dma_len, dir); - - if (dest2) - dma_unmap_page(dev, dest2, desc->dma_len, dir); - } - - if (!(flags & DMA_COMPL_SKIP_SRC_UNMAP)) { - dir = DMA_TO_DEVICE; - for (i = j; i < desc->src_cnt + j; i++) { - src = cf[i].address; - if (src == dest1 || src == dest2) - continue; - dma_unmap_page(dev, src, desc->dma_len, dir); - } - } -} - static void re_jr_desc_done(struct fsl_re_dma_async_tx_desc *desc) { struct dma_chan *chan = &desc->jr->chan; @@ -171,7 +130,6 @@ static void re_jr_desc_done(struct fsl_re_dma_async_tx_desc *desc) if (chan->completed_cookie == DMA_MAX_COOKIE) chan->completed_cookie = DMA_MIN_COOKIE; } - re_jr_unmap_dest_src(desc); if (callback) callback(callback_param); |