mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	spi: spi-fsl-dspi: Convert the instantiations that support it to DMA
The A-011218 eDMA/DSPI erratum affects most of the older Layerscape SoCs with DSPI, and its workaround is a bit intrusive. After this patch, there are no users of TCFQ mode that don't also support XSPI (previously there was LS2085A). Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Message-Id: <20200302001958.11105-7-olteanv@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
		
							parent
							
								
									63669902f7
								
							
						
					
					
						commit
						0feaf8f5af
					
				
					 1 changed files with 10 additions and 3 deletions
				
			
		| 
						 | 
					@ -147,42 +147,49 @@ static const struct fsl_dspi_devtype_data devtype_data[] = {
 | 
				
			||||||
		.fifo_size		= 4,
 | 
							.fifo_size		= 4,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS1021A] = {
 | 
						[LS1021A] = {
 | 
				
			||||||
 | 
							/* Has A-011218 DMA erratum */
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_TCFQ_MODE,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 4,
 | 
							.fifo_size		= 4,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS1012A] = {
 | 
						[LS1012A] = {
 | 
				
			||||||
 | 
							/* Has A-011218 DMA erratum */
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_TCFQ_MODE,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 16,
 | 
							.fifo_size		= 16,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS1043A] = {
 | 
						[LS1043A] = {
 | 
				
			||||||
 | 
							/* Has A-011218 DMA erratum */
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_TCFQ_MODE,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 16,
 | 
							.fifo_size		= 16,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS1046A] = {
 | 
						[LS1046A] = {
 | 
				
			||||||
 | 
							/* Has A-011218 DMA erratum */
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_TCFQ_MODE,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 16,
 | 
							.fifo_size		= 16,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS2080A] = {
 | 
						[LS2080A] = {
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_DMA_MODE,
 | 
				
			||||||
 | 
							.dma_bufsize		= 8,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 4,
 | 
							.fifo_size		= 4,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LS2085A] = {
 | 
						[LS2085A] = {
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_DMA_MODE,
 | 
				
			||||||
 | 
							.dma_bufsize		= 8,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.fifo_size		= 4,
 | 
							.fifo_size		= 4,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
	[LX2160A] = {
 | 
						[LX2160A] = {
 | 
				
			||||||
		.trans_mode		= DSPI_TCFQ_MODE,
 | 
							.trans_mode		= DSPI_DMA_MODE,
 | 
				
			||||||
 | 
							.dma_bufsize		= 8,
 | 
				
			||||||
		.max_clock_factor	= 8,
 | 
							.max_clock_factor	= 8,
 | 
				
			||||||
		.xspi_mode		= true,
 | 
							.xspi_mode		= true,
 | 
				
			||||||
		.fifo_size		= 4,
 | 
							.fifo_size		= 4,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue