Thread (19 messages) 19 messages, 3 authors, 2017-07-05

[PATCH 5/7] serial: imx: umap sg buffers when DMA channel is released

From: Uwe Kleine-König <hidden>
Date: 2017-07-03 07:01:28
Also in: linux-serial, lkml

$Subject ~= s/umap/unmap/

On Fri, Jun 30, 2017 at 02:04:44PM +0200, Romain Perier wrote:
quoted hunk ↗ jump to hunk
From: Nandor Han <redacted>

This commits unmaps sg buffers when the DMA channel is released

Signed-off-by: Nandor Han <redacted>
Signed-off-by: Romain Perier <redacted>
---
 drivers/tty/serial/imx.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index e8cf7cf..58d6b1c 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1215,6 +1215,12 @@ static void imx_stop_tx_dma(struct imx_port *sport)
 	temp = readl(sport->port.membase + UCR1);
 	temp &= ~UCR1_TDMAEN;
 	writel(temp, sport->port.membase + UCR1);
+
+	if (sport->dma_is_txing) {
+		dma_unmap_sg(sport->port.dev, &sport->tx_sgl[0],
+		sport->dma_tx_nents, DMA_TO_DEVICE);
+		sport->dma_is_txing = 0;
You don't motivate setting dma_is_txing to zero in the commit log. 

Does this mean the driver leaks memory in the current state?
+	}
 }
 
 static void imx_stop_rx_dma(struct imx_port *sport)
Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help