diff options
author | Vinod Koul <vinod.koul@intel.com> | 2016-10-03 05:47:33 +0200 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2016-10-03 05:47:33 +0200 |
commit | 11bfedff5594eef74617e6aa02986cf517526b98 (patch) | |
tree | 2aa1a3b8d4e71abda7103b41edffb3a92ca26784 /drivers/dma/ep93xx_dma.c | |
parent | Merge branch 'topic/dmatest' into for-linus (diff) | |
parent | dmaengine: qcom_hidma: add error reporting for tx_status (diff) | |
download | linux-11bfedff5594eef74617e6aa02986cf517526b98.tar.xz linux-11bfedff5594eef74617e6aa02986cf517526b98.zip |
Merge branch 'topic/err_reporting' into for-linus
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Conflicts:
drivers/dma/cppi41.c
Diffstat (limited to 'drivers/dma/ep93xx_dma.c')
-rw-r--r-- | drivers/dma/ep93xx_dma.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/dma/ep93xx_dma.c b/drivers/dma/ep93xx_dma.c index ca17e8751af2..d37e8dda8079 100644 --- a/drivers/dma/ep93xx_dma.c +++ b/drivers/dma/ep93xx_dma.c @@ -737,10 +737,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 @@ -755,8 +755,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); @@ -769,8 +768,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) |