mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	spi: stm32: Add OSPI driver
Add STM32 OSPI driver, it supports :
  - support sNOR / sNAND devices.
  - Three functional modes: indirect, automatic-status polling,
    memory-mapped.
  - Single-, dual-, quad-, and octal-SPI communication.
  - Dual-quad communication.
  - Single data rate (SDR).
  - DMA channel for indirect mode.
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Link: https://patch.msgid.link/20250219080059.367045-3-patrice.chotard@foss.st.com
Signed-off-by: Mark Brown <broonie@kernel.org>
			
			
This commit is contained in:
		
							parent
							
								
									bed97e3578
								
							
						
					
					
						commit
						79b8a705e2
					
				
					 3 changed files with 1076 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -1045,6 +1045,16 @@ config SPI_STM32
 | 
			
		|||
	  is not available, the driver automatically falls back to
 | 
			
		||||
	  PIO mode.
 | 
			
		||||
 | 
			
		||||
config SPI_STM32_OSPI
 | 
			
		||||
	tristate "STMicroelectronics STM32 OCTO SPI controller"
 | 
			
		||||
	depends on ARCH_STM32 || COMPILE_TEST
 | 
			
		||||
	depends on OF
 | 
			
		||||
	depends on SPI_MEM
 | 
			
		||||
	help
 | 
			
		||||
	  This enables support for the Octo SPI controller in master mode.
 | 
			
		||||
	  This driver does not support generic SPI. The implementation only
 | 
			
		||||
	  supports spi-mem interface.
 | 
			
		||||
 | 
			
		||||
config SPI_STM32_QSPI
 | 
			
		||||
	tristate "STMicroelectronics STM32 QUAD SPI controller"
 | 
			
		||||
	depends on ARCH_STM32 || COMPILE_TEST
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -137,6 +137,7 @@ obj-$(CONFIG_SPI_SN_F_OSPI)		+= spi-sn-f-ospi.o
 | 
			
		|||
obj-$(CONFIG_SPI_SPRD)			+= spi-sprd.o
 | 
			
		||||
obj-$(CONFIG_SPI_SPRD_ADI)		+= spi-sprd-adi.o
 | 
			
		||||
obj-$(CONFIG_SPI_STM32) 		+= spi-stm32.o
 | 
			
		||||
obj-$(CONFIG_SPI_STM32_OSPI) 		+= spi-stm32-ospi.o
 | 
			
		||||
obj-$(CONFIG_SPI_STM32_QSPI) 		+= spi-stm32-qspi.o
 | 
			
		||||
obj-$(CONFIG_SPI_ST_SSC4)		+= spi-st-ssc4.o
 | 
			
		||||
obj-$(CONFIG_SPI_SUN4I)			+= spi-sun4i.o
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										1065
									
								
								drivers/spi/spi-stm32-ospi.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1065
									
								
								drivers/spi/spi-stm32-ospi.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
		Loading…
	
		Reference in a new issue