diff options
Diffstat (limited to 'drivers/dma/dmaengine.c')
-rw-r--r-- | drivers/dma/dmaengine.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/dma/dmaengine.c b/drivers/dma/dmaengine.c index 8db0e7f9d3f4..d6dc70fd7527 100644 --- a/drivers/dma/dmaengine.c +++ b/drivers/dma/dmaengine.c | |||
@@ -362,7 +362,6 @@ int dma_async_device_register(struct dma_device *device) | |||
362 | 362 | ||
363 | BUG_ON(!device->device_alloc_chan_resources); | 363 | BUG_ON(!device->device_alloc_chan_resources); |
364 | BUG_ON(!device->device_free_chan_resources); | 364 | BUG_ON(!device->device_free_chan_resources); |
365 | BUG_ON(!device->device_dependency_added); | ||
366 | BUG_ON(!device->device_is_tx_complete); | 365 | BUG_ON(!device->device_is_tx_complete); |
367 | BUG_ON(!device->device_issue_pending); | 366 | BUG_ON(!device->device_issue_pending); |
368 | BUG_ON(!device->dev); | 367 | BUG_ON(!device->dev); |
@@ -479,7 +478,8 @@ dma_async_memcpy_buf_to_buf(struct dma_chan *chan, void *dest, | |||
479 | 478 | ||
480 | dma_src = dma_map_single(dev->dev, src, len, DMA_TO_DEVICE); | 479 | dma_src = dma_map_single(dev->dev, src, len, DMA_TO_DEVICE); |
481 | dma_dest = dma_map_single(dev->dev, dest, len, DMA_FROM_DEVICE); | 480 | dma_dest = dma_map_single(dev->dev, dest, len, DMA_FROM_DEVICE); |
482 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, 0); | 481 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, |
482 | DMA_CTRL_ACK); | ||
483 | 483 | ||
484 | if (!tx) { | 484 | if (!tx) { |
485 | dma_unmap_single(dev->dev, dma_src, len, DMA_TO_DEVICE); | 485 | dma_unmap_single(dev->dev, dma_src, len, DMA_TO_DEVICE); |
@@ -487,7 +487,6 @@ dma_async_memcpy_buf_to_buf(struct dma_chan *chan, void *dest, | |||
487 | return -ENOMEM; | 487 | return -ENOMEM; |
488 | } | 488 | } |
489 | 489 | ||
490 | tx->ack = 1; | ||
491 | tx->callback = NULL; | 490 | tx->callback = NULL; |
492 | cookie = tx->tx_submit(tx); | 491 | cookie = tx->tx_submit(tx); |
493 | 492 | ||
@@ -525,7 +524,8 @@ dma_async_memcpy_buf_to_pg(struct dma_chan *chan, struct page *page, | |||
525 | 524 | ||
526 | dma_src = dma_map_single(dev->dev, kdata, len, DMA_TO_DEVICE); | 525 | dma_src = dma_map_single(dev->dev, kdata, len, DMA_TO_DEVICE); |
527 | dma_dest = dma_map_page(dev->dev, page, offset, len, DMA_FROM_DEVICE); | 526 | dma_dest = dma_map_page(dev->dev, page, offset, len, DMA_FROM_DEVICE); |
528 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, 0); | 527 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, |
528 | DMA_CTRL_ACK); | ||
529 | 529 | ||
530 | if (!tx) { | 530 | if (!tx) { |
531 | dma_unmap_single(dev->dev, dma_src, len, DMA_TO_DEVICE); | 531 | dma_unmap_single(dev->dev, dma_src, len, DMA_TO_DEVICE); |
@@ -533,7 +533,6 @@ dma_async_memcpy_buf_to_pg(struct dma_chan *chan, struct page *page, | |||
533 | return -ENOMEM; | 533 | return -ENOMEM; |
534 | } | 534 | } |
535 | 535 | ||
536 | tx->ack = 1; | ||
537 | tx->callback = NULL; | 536 | tx->callback = NULL; |
538 | cookie = tx->tx_submit(tx); | 537 | cookie = tx->tx_submit(tx); |
539 | 538 | ||
@@ -574,7 +573,8 @@ dma_async_memcpy_pg_to_pg(struct dma_chan *chan, struct page *dest_pg, | |||
574 | dma_src = dma_map_page(dev->dev, src_pg, src_off, len, DMA_TO_DEVICE); | 573 | dma_src = dma_map_page(dev->dev, src_pg, src_off, len, DMA_TO_DEVICE); |
575 | dma_dest = dma_map_page(dev->dev, dest_pg, dest_off, len, | 574 | dma_dest = dma_map_page(dev->dev, dest_pg, dest_off, len, |
576 | DMA_FROM_DEVICE); | 575 | DMA_FROM_DEVICE); |
577 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, 0); | 576 | tx = dev->device_prep_dma_memcpy(chan, dma_dest, dma_src, len, |
577 | DMA_CTRL_ACK); | ||
578 | 578 | ||
579 | if (!tx) { | 579 | if (!tx) { |
580 | dma_unmap_page(dev->dev, dma_src, len, DMA_TO_DEVICE); | 580 | dma_unmap_page(dev->dev, dma_src, len, DMA_TO_DEVICE); |
@@ -582,7 +582,6 @@ dma_async_memcpy_pg_to_pg(struct dma_chan *chan, struct page *dest_pg, | |||
582 | return -ENOMEM; | 582 | return -ENOMEM; |
583 | } | 583 | } |
584 | 584 | ||
585 | tx->ack = 1; | ||
586 | tx->callback = NULL; | 585 | tx->callback = NULL; |
587 | cookie = tx->tx_submit(tx); | 586 | cookie = tx->tx_submit(tx); |
588 | 587 | ||
@@ -600,8 +599,6 @@ void dma_async_tx_descriptor_init(struct dma_async_tx_descriptor *tx, | |||
600 | { | 599 | { |
601 | tx->chan = chan; | 600 | tx->chan = chan; |
602 | spin_lock_init(&tx->lock); | 601 | spin_lock_init(&tx->lock); |
603 | INIT_LIST_HEAD(&tx->depend_node); | ||
604 | INIT_LIST_HEAD(&tx->depend_list); | ||
605 | } | 602 | } |
606 | EXPORT_SYMBOL(dma_async_tx_descriptor_init); | 603 | EXPORT_SYMBOL(dma_async_tx_descriptor_init); |
607 | 604 | ||