imx6: disable UART dma

Fixes these prints on boot:

[   13.785600] imx-uart 2020000.serial: DMA transaction error.
[   13.793134] imx-uart 2020000.serial: DMA transaction error.
[   13.798721] imx-uart 2020000.serial: DMA transaction error.

Based on following upstream patch by Tim Harvey (Gateworks):

80a01b6582

TX complete DMA messages are getting missed.
This is also currently an issue in mainline.
For now we will disable DMA in serial/imx.c.

This resolves an issue encountered with RS485 transmit.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
master
Koen Vandeputte 8 years ago committed by John Crispin
parent acd8649b18
commit 3b4241071d
  1. 23
      target/linux/imx6/patches-4.9/210-disable-uart-dma.patch

@ -0,0 +1,23 @@
Based on following upstream patch by Tim Harvey (Gateworks):
https://github.com/Gateworks/openwrt/commit/80a01b6582f94c4547f39d3a25e0a1e9b6eb9877
TX complete DMA messages are getting missed.
This is also currently an issue in mainline.
For now we will disable DMA in serial/imx.c.
This resolves an issue encountered with RS485 transmit.
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1268,10 +1268,6 @@ static int imx_startup(struct uart_port
writel(temp & ~UCR4_DREN, sport->port.membase + UCR4);
- /* Can we enable the DMA support? */
- if (!uart_console(port) && !sport->dma_is_inited)
- imx_uart_dma_init(sport);
-
spin_lock_irqsave(&sport->port.lock, flags);
/* Reset fifo's and state machines */
i = 100;
Loading…
Cancel
Save