dmaengine: pl330: convert callback to helper function
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>
This commit is contained in:
Родитель
5c066f7d01
Коммит
f08462c650
|
@ -2039,14 +2039,12 @@ static void pl330_tasklet(unsigned long data)
|
|||
}
|
||||
|
||||
while (!list_empty(&pch->completed_list)) {
|
||||
dma_async_tx_callback callback;
|
||||
void *callback_param;
|
||||
struct dmaengine_desc_callback cb;
|
||||
|
||||
desc = list_first_entry(&pch->completed_list,
|
||||
struct dma_pl330_desc, node);
|
||||
|
||||
callback = desc->txd.callback;
|
||||
callback_param = desc->txd.callback_param;
|
||||
dmaengine_desc_get_callback(&desc->txd, &cb);
|
||||
|
||||
if (pch->cyclic) {
|
||||
desc->status = PREP;
|
||||
|
@ -2064,9 +2062,9 @@ static void pl330_tasklet(unsigned long data)
|
|||
|
||||
dma_descriptor_unmap(&desc->txd);
|
||||
|
||||
if (callback) {
|
||||
if (dmaengine_desc_callback_valid(&cb)) {
|
||||
spin_unlock_irqrestore(&pch->lock, flags);
|
||||
callback(callback_param);
|
||||
dmaengine_desc_callback_invoke(&cb, NULL);
|
||||
spin_lock_irqsave(&pch->lock, flags);
|
||||
}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче