dmaengine: ep93xx_dma: convert callback to helper function
authorDave Jiang <dave.jiang@intel.com>
Wed, 20 Jul 2016 20:11:05 +0000 (13:11 -0700)
committerVinod Koul <vinod.koul@intel.com>
Mon, 8 Aug 2016 02:41:38 +0000 (08:11 +0530)
This is in preperation of moving to a callback that provides results to the
callback for the transaction. The conversion will maintain current behavior
and the driver must convert to new callback mechanism at a later time in
order to receive results.

Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/ep93xx_dma.c

index 21f08cc3352b97fbf047cd8661a2191e1988e0f6..aba0b381cb8c58db06d1f97539b8cdecb8253980 100644 (file)
@@ -739,10 +739,10 @@ static void ep93xx_dma_tasklet(unsigned long data)
 {
        struct ep93xx_dma_chan *edmac = (struct ep93xx_dma_chan *)data;
        struct ep93xx_dma_desc *desc, *d;
-       dma_async_tx_callback callback = NULL;
-       void *callback_param = NULL;
+       struct dmaengine_desc_callback cb;
        LIST_HEAD(list);
 
+       memset(&cb, 0, sizeof(cb));
        spin_lock_irq(&edmac->lock);
        /*
         * If dma_terminate_all() was called before we get to run, the active
@@ -757,8 +757,7 @@ static void ep93xx_dma_tasklet(unsigned long data)
                                dma_cookie_complete(&desc->txd);
                        list_splice_init(&edmac->active, &list);
                }
-               callback = desc->txd.callback;
-               callback_param = desc->txd.callback_param;
+               dmaengine_desc_get_callback(&desc->txd, &cb);
        }
        spin_unlock_irq(&edmac->lock);
 
@@ -771,8 +770,7 @@ static void ep93xx_dma_tasklet(unsigned long data)
                ep93xx_dma_desc_put(edmac, desc);
        }
 
-       if (callback)
-               callback(callback_param);
+       dmaengine_desc_callback_invoke(&cb, NULL);
 }
 
 static irqreturn_t ep93xx_dma_interrupt(int irq, void *dev_id)