mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 14:04:26 -04:00 
			
		
		
		
	When this target got updated to 4.14, this patch got removed to re-evaluate if it was still needed. Extensive testing now shows this issue is still present. Let's re-add the patch to fix it for now. As the uart bus is very low bandwidth .. performance impact is negligible. Boot log: [ 22.513051] imx-uart 2020000.serial: DMA transaction error. [ 22.522721] imx-uart 2020000.serial: DMA transaction error. As a sidenote: The patch mentiones an issue with RS485, but the bootlog errors above were recorded with the uart ports in standard RS232 mode. Compile/Run-tested on imx6/GW5200 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
		
			
				
	
	
		
			24 lines
		
	
	
		
			747 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			747 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| 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;
 |