mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX
Provide a basic driver to control DSP processor found on NXP i.MX8QM, i.MX8QXP, i.MX8MP and i.MX8ULP. Currently it is able to resolve addresses between DSP and main CPU, start and stop the processor, suspend and resume. The communication between DSP and main CPU is based on mailbox, there are three mailbox channels (tx, rx, rxdb). This driver was tested on NXP i.MX8QM, i.MX8QXP, i.MX8MP and i.MX8ULP. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Link: https://lore.kernel.org/r/1633944015-789-4-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
This commit is contained in:
		
							parent
							
								
									d2320a042e
								
							
						
					
					
						commit
						ec0e5549f3
					
				
					 3 changed files with 1218 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -34,6 +34,17 @@ config IMX_REMOTEPROC
 | 
			
		|||
 | 
			
		||||
	  It's safe to say N here.
 | 
			
		||||
 | 
			
		||||
config IMX_DSP_REMOTEPROC
 | 
			
		||||
	tristate "i.MX DSP remoteproc support"
 | 
			
		||||
	depends on ARCH_MXC
 | 
			
		||||
	depends on HAVE_ARM_SMCCC
 | 
			
		||||
	select MAILBOX
 | 
			
		||||
	help
 | 
			
		||||
	  Say y here to support iMX's DSP remote processors via the remote
 | 
			
		||||
	  processor framework.
 | 
			
		||||
 | 
			
		||||
	  It's safe to say N here.
 | 
			
		||||
 | 
			
		||||
config INGENIC_VPU_RPROC
 | 
			
		||||
	tristate "Ingenic JZ47xx VPU remoteproc support"
 | 
			
		||||
	depends on MIPS || COMPILE_TEST
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,7 @@ remoteproc-y				+= remoteproc_virtio.o
 | 
			
		|||
remoteproc-y				+= remoteproc_elf_loader.o
 | 
			
		||||
obj-$(CONFIG_REMOTEPROC_CDEV)		+= remoteproc_cdev.o
 | 
			
		||||
obj-$(CONFIG_IMX_REMOTEPROC)		+= imx_rproc.o
 | 
			
		||||
obj-$(CONFIG_IMX_DSP_REMOTEPROC)	+= imx_dsp_rproc.o
 | 
			
		||||
obj-$(CONFIG_INGENIC_VPU_RPROC)		+= ingenic_rproc.o
 | 
			
		||||
obj-$(CONFIG_MTK_SCP)			+= mtk_scp.o mtk_scp_ipi.o
 | 
			
		||||
obj-$(CONFIG_OMAP_REMOTEPROC)		+= omap_remoteproc.o
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										1206
									
								
								drivers/remoteproc/imx_dsp_rproc.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1206
									
								
								drivers/remoteproc/imx_dsp_rproc.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
		Loading…
	
		Reference in a new issue