All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tty: serial: imx: use the sg count from dma_map_sg
@ 2019-11-07  3:02 ` Peng Fan
  0 siblings, 0 replies; 4+ messages in thread
From: Peng Fan @ 2019-11-07  3:02 UTC (permalink / raw)
  To: gregkh, jslaby, shawnguo, festevam
  Cc: dl-linux-imx, linux-serial, linux-kernel, Andy Duan, kernel,
	linux-arm-kernel, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

The dmaengine_prep_slave_sg needs to use sg count returned
by dma_map_sg, not use sport->dma_tx_nents, because the return
value of dma_map_sg is not always same with "nents".

And update sport->dma_tx_nents with value from dma_map_sg to avoid
modifing dma_unmap_sg

Fixes: b4cdc8f61beb("serial: imx: add DMA support for imx6q")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/imx.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 87c58f9f6390..bda7f59ec60e 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -619,6 +619,9 @@ static void imx_uart_dma_tx(struct imx_port *sport)
 		dev_err(dev, "DMA mapping error for TX.\n");
 		return;
 	}
+
+	sport->dma_tx_nents = ret;
+
 	desc = dmaengine_prep_slave_sg(chan, sgl, sport->dma_tx_nents,
 					DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
 	if (!desc) {
-- 
2.16.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH] tty: serial: imx: use the sg count from dma_map_sg
@ 2019-11-07  3:02 ` Peng Fan
  0 siblings, 0 replies; 4+ messages in thread
From: Peng Fan @ 2019-11-07  3:02 UTC (permalink / raw)
  To: gregkh, jslaby, shawnguo, festevam
  Cc: Peng Fan, Andy Duan, linux-serial, linux-kernel, dl-linux-imx,
	kernel, linux-arm-kernel

From: Peng Fan <peng.fan@nxp.com>

The dmaengine_prep_slave_sg needs to use sg count returned
by dma_map_sg, not use sport->dma_tx_nents, because the return
value of dma_map_sg is not always same with "nents".

And update sport->dma_tx_nents with value from dma_map_sg to avoid
modifing dma_unmap_sg

Fixes: b4cdc8f61beb("serial: imx: add DMA support for imx6q")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/imx.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 87c58f9f6390..bda7f59ec60e 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -619,6 +619,9 @@ static void imx_uart_dma_tx(struct imx_port *sport)
 		dev_err(dev, "DMA mapping error for TX.\n");
 		return;
 	}
+
+	sport->dma_tx_nents = ret;
+
 	desc = dmaengine_prep_slave_sg(chan, sgl, sport->dma_tx_nents,
 					DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
 	if (!desc) {
-- 
2.16.4


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* RE: [PATCH] tty: serial: imx: use the sg count from dma_map_sg
  2019-11-07  3:02 ` Peng Fan
@ 2019-11-07  6:37   ` Peng Fan
  -1 siblings, 0 replies; 4+ messages in thread
From: Peng Fan @ 2019-11-07  6:37 UTC (permalink / raw)
  To: gregkh, jslaby, shawnguo, festevam
  Cc: dl-linux-imx, linux-serial, linux-kernel, Andy Duan, kernel,
	linux-arm-kernel

> Subject: [PATCH] tty: serial: imx: use the sg count from dma_map_sg

Ignore this patch. Wrong fix, will have V2.

Thanks,
Peng.

> 
> From: Peng Fan <peng.fan@nxp.com>
> 
> The dmaengine_prep_slave_sg needs to use sg count returned by
> dma_map_sg, not use sport->dma_tx_nents, because the return value of
> dma_map_sg is not always same with "nents".
> 
> And update sport->dma_tx_nents with value from dma_map_sg to avoid
> modifing dma_unmap_sg
> 
> Fixes: b4cdc8f61beb("serial: imx: add DMA support for imx6q")
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  drivers/tty/serial/imx.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index
> 87c58f9f6390..bda7f59ec60e 100644
> --- a/drivers/tty/serial/imx.c
> +++ b/drivers/tty/serial/imx.c
> @@ -619,6 +619,9 @@ static void imx_uart_dma_tx(struct imx_port *sport)
>  		dev_err(dev, "DMA mapping error for TX.\n");
>  		return;
>  	}
> +
> +	sport->dma_tx_nents = ret;
> +
>  	desc = dmaengine_prep_slave_sg(chan, sgl, sport->dma_tx_nents,
>  					DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
>  	if (!desc) {
> --
> 2.16.4


^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: [PATCH] tty: serial: imx: use the sg count from dma_map_sg
@ 2019-11-07  6:37   ` Peng Fan
  0 siblings, 0 replies; 4+ messages in thread
From: Peng Fan @ 2019-11-07  6:37 UTC (permalink / raw)
  To: gregkh, jslaby, shawnguo, festevam
  Cc: Andy Duan, linux-serial, linux-kernel, dl-linux-imx, kernel,
	linux-arm-kernel

> Subject: [PATCH] tty: serial: imx: use the sg count from dma_map_sg

Ignore this patch. Wrong fix, will have V2.

Thanks,
Peng.

> 
> From: Peng Fan <peng.fan@nxp.com>
> 
> The dmaengine_prep_slave_sg needs to use sg count returned by
> dma_map_sg, not use sport->dma_tx_nents, because the return value of
> dma_map_sg is not always same with "nents".
> 
> And update sport->dma_tx_nents with value from dma_map_sg to avoid
> modifing dma_unmap_sg
> 
> Fixes: b4cdc8f61beb("serial: imx: add DMA support for imx6q")
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  drivers/tty/serial/imx.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index
> 87c58f9f6390..bda7f59ec60e 100644
> --- a/drivers/tty/serial/imx.c
> +++ b/drivers/tty/serial/imx.c
> @@ -619,6 +619,9 @@ static void imx_uart_dma_tx(struct imx_port *sport)
>  		dev_err(dev, "DMA mapping error for TX.\n");
>  		return;
>  	}
> +
> +	sport->dma_tx_nents = ret;
> +
>  	desc = dmaengine_prep_slave_sg(chan, sgl, sport->dma_tx_nents,
>  					DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
>  	if (!desc) {
> --
> 2.16.4


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-11-07  6:37 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-07  3:02 [PATCH] tty: serial: imx: use the sg count from dma_map_sg Peng Fan
2019-11-07  3:02 ` Peng Fan
2019-11-07  6:37 ` Peng Fan
2019-11-07  6:37   ` Peng Fan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.