From 303a20d0917872dec2bcb0fd1f5ccd03c1991f9a Mon Sep 17 00:00:00 2001 From: Pradeep Kumar Date: Fri, 11 May 2012 11:54:05 +0530 Subject: Revert "serial: tegra: Use tegra_dma_cancel() to abort request" BT Filetransfer have some issue. This reverts commit e8c243d5d09d1a552b66df7a8a0a0313047ebbac. Bug 982630 Change-Id: I6e76d44e076874569518fa881e427918d3e546f2 Signed-off-by: Pradeep Kumar Reviewed-on: http://git-master/r/101914 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan GVS: Gerrit_Virtual_Submit --- drivers/tty/serial/tegra_hsuart.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'drivers') diff --git a/drivers/tty/serial/tegra_hsuart.c b/drivers/tty/serial/tegra_hsuart.c index 10560107e066..4169cbcbf299 100644 --- a/drivers/tty/serial/tegra_hsuart.c +++ b/drivers/tty/serial/tegra_hsuart.c @@ -155,14 +155,6 @@ static inline void uart_writeb(struct tegra_uart_port *t, u8 val, writeb(val, t->uport.membase + (reg << t->uport.regshift)); } -static void cancel_dma(struct tegra_dma_channel *dma_chan, - struct tegra_dma_req *req) -{ - tegra_dma_cancel(dma_chan); - if (req->status == -TEGRA_DMA_REQ_ERROR_ABORTED) - req->complete(req); -} - static inline void uart_writel(struct tegra_uart_port *t, u32 val, unsigned long reg) { @@ -352,7 +344,7 @@ static void do_handle_rx_dma(struct tegra_uart_port *t) struct uart_port *u = &t->uport; if (t->rts_active) set_rts(t, false); - cancel_dma(t->rx_dma, &t->rx_dma_req); + tegra_dma_dequeue_req(t->rx_dma, &t->rx_dma_req); tty_flip_buffer_push(u->state->port.tty); /* enqueue the request again */ tegra_start_dma_rx(t); @@ -628,7 +620,7 @@ static void tegra_stop_rx(struct uart_port *u) t->rx_in_progress = 0; if (t->use_rx_dma && t->rx_dma) - cancel_dma(t->rx_dma, &t->rx_dma_req); + tegra_dma_dequeue_req(t->rx_dma, &t->rx_dma_req); else do_handle_rx_pio(t); @@ -1077,7 +1069,7 @@ static void tegra_stop_tx(struct uart_port *u) t = container_of(u, struct tegra_uart_port, uport); if (t->use_tx_dma) - cancel_dma(t->tx_dma, &t->tx_dma_req); + tegra_dma_dequeue_req(t->tx_dma, &t->tx_dma_req); return; } @@ -1363,7 +1355,7 @@ static void tegra_flush_buffer(struct uart_port *u) t->tx_bytes = 0; if (t->use_tx_dma) { - cancel_dma(t->tx_dma, &t->tx_dma_req); + tegra_dma_dequeue_req(t->tx_dma, &t->tx_dma_req); t->tx_dma_req.size = 0; } return; -- cgit v1.2.3