Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
[cascardo/linux.git] / drivers / dma / timb_dma.c
index e82745a..896bafb 100644 (file)
@@ -226,8 +226,7 @@ static void __td_start_dma(struct timb_dma_chan *td_chan)
 
 static void __td_finish(struct timb_dma_chan *td_chan)
 {
-       dma_async_tx_callback           callback;
-       void                            *param;
+       struct dmaengine_desc_callback  cb;
        struct dma_async_tx_descriptor  *txd;
        struct timb_dma_desc            *td_desc;
 
@@ -252,8 +251,7 @@ static void __td_finish(struct timb_dma_chan *td_chan)
        dma_cookie_complete(txd);
        td_chan->ongoing = false;
 
-       callback = txd->callback;
-       param = txd->callback_param;
+       dmaengine_desc_get_callback(txd, &cb);
 
        list_move(&td_desc->desc_node, &td_chan->free_list);
 
@@ -262,8 +260,7 @@ static void __td_finish(struct timb_dma_chan *td_chan)
         * The API requires that no submissions are done from a
         * callback, so we don't need to drop the lock here
         */
-       if (callback)
-               callback(param);
+       dmaengine_desc_callback_invoke(&cb, NULL);
 }
 
 static u32 __td_ier_mask(struct timb_dma *td)