mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
| --- linux-4.9.37/drivers/tty/serial/amba-pl011.c	2017-07-12 16:42:41.000000000 +0300
 | |
| +++ linux-4.9.y/drivers/tty/serial/amba-pl011.c	2021-06-07 13:01:34.000000000 +0300
 | |
| @@ -109,12 +109,20 @@
 | |
|  
 | |
|  static unsigned int get_fifosize_arm(struct amba_device *dev)
 | |
|  {
 | |
| +#ifdef CONFIG_ARCH_GOKE
 | |
| +	return 64;
 | |
| +#else
 | |
|  	return amba_rev(dev) < 3 ? 16 : 32;
 | |
| +#endif
 | |
|  }
 | |
|  
 | |
|  static struct vendor_data vendor_arm = {
 | |
|  	.reg_offset		= pl011_std_offsets,
 | |
| +#ifdef CONFIG_ARCH_GOKE
 | |
| +	.ifls			= UART011_IFLS_RX1_8|UART011_IFLS_TX1_8,
 | |
| +#else
 | |
|  	.ifls			= UART011_IFLS_RX4_8|UART011_IFLS_TX4_8,
 | |
| +#endif
 | |
|  	.fr_busy		= UART01x_FR_BUSY,
 | |
|  	.fr_dsr			= UART01x_FR_DSR,
 | |
|  	.fr_cts			= UART01x_FR_CTS,
 | |
| @@ -405,7 +413,11 @@
 | |
|  				 pl011_reg_to_offset(uap, REG_DR),
 | |
|  		.dst_addr_width = DMA_SLAVE_BUSWIDTH_1_BYTE,
 | |
|  		.direction = DMA_MEM_TO_DEV,
 | |
| +#ifdef  CONFIG_ARCH_GOKE
 | |
| +		.dst_maxburst = 7,
 | |
| +#else
 | |
|  		.dst_maxburst = uap->fifosize >> 1,
 | |
| +#endif
 | |
|  		.device_fc = false,
 | |
|  	};
 | |
|  	struct dma_chan *chan;
 | |
| @@ -461,7 +473,11 @@
 | |
|  				pl011_reg_to_offset(uap, REG_DR),
 | |
|  			.src_addr_width = DMA_SLAVE_BUSWIDTH_1_BYTE,
 | |
|  			.direction = DMA_DEV_TO_MEM,
 | |
| +#ifdef CONFIG_ARCH_GOKE
 | |
| +			.src_maxburst = 7,
 | |
| +#else
 | |
|  			.src_maxburst = uap->fifosize >> 2,
 | |
| +#endif
 | |
|  			.device_fc = false,
 | |
|  		};
 | |
|  		struct dma_slave_caps caps;
 |