serial: 8250_dma: switch to new dmaengine_terminate_* API
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 17 Aug 2016 16:20:24 +0000 (19:20 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 31 Aug 2016 14:13:29 +0000 (16:13 +0200)
Convert dmaengine_terminate_all() calls to synchronous and asynchronous
versions where appropriate.

Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Tested-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_dma.c

index 3590d01..896e8f4 100644 (file)
@@ -142,7 +142,7 @@ void serial8250_rx_dma_flush(struct uart_8250_port *p)
        if (dma->rx_running) {
                dmaengine_pause(dma->rxchan);
                __dma_rx_complete(p);
-               dmaengine_terminate_all(dma->rxchan);
+               dmaengine_terminate_async(dma->rxchan);
        }
 }
 EXPORT_SYMBOL_GPL(serial8250_rx_dma_flush);
@@ -247,14 +247,14 @@ void serial8250_release_dma(struct uart_8250_port *p)
                return;
 
        /* Release RX resources */
-       dmaengine_terminate_all(dma->rxchan);
+       dmaengine_terminate_sync(dma->rxchan);
        dma_free_coherent(dma->rxchan->device->dev, dma->rx_size, dma->rx_buf,
                          dma->rx_addr);
        dma_release_channel(dma->rxchan);
        dma->rxchan = NULL;
 
        /* Release TX resources */
-       dmaengine_terminate_all(dma->txchan);
+       dmaengine_terminate_sync(dma->txchan);
        dma_unmap_single(dma->txchan->device->dev, dma->tx_addr,
                         UART_XMIT_SIZE, DMA_TO_DEVICE);
        dma_release_channel(dma->txchan);