mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	usb: gadget: renesas_usb3: add support for Renesas USB3.0 peripheral controller
R-Car H3 has USB3.0 peripheral controllers. This controller's has the following features: - Supports super, high and full speed - Contains 30 pipes for bulk or interrupt transfer - Contains dedicated DMA controller This driver doesn't support the dedicated DMAC for now. Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
		
							parent
							
								
									a40a00318c
								
							
						
					
					
						commit
						746bfe63bb
					
				
					 4 changed files with 2010 additions and 0 deletions
				
			
		
							
								
								
									
										23
									
								
								Documentation/devicetree/bindings/usb/renesas_usb3.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								Documentation/devicetree/bindings/usb/renesas_usb3.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,23 @@
 | 
			
		|||
Renesas Electronics USB3.0 Peripheral driver
 | 
			
		||||
 | 
			
		||||
Required properties:
 | 
			
		||||
  - compatible: Must contain one of the following:
 | 
			
		||||
	- "renesas,r8a7795-usb3-peri"
 | 
			
		||||
  - reg: Base address and length of the register for the USB3.0 Peripheral
 | 
			
		||||
  - interrupts: Interrupt specifier for the USB3.0 Peripheral
 | 
			
		||||
  - clocks: clock phandle and specifier pair
 | 
			
		||||
 | 
			
		||||
Example:
 | 
			
		||||
	usb3_peri0: usb@ee020000 {
 | 
			
		||||
		compatible = "renesas,r8a7795-usb3-peri";
 | 
			
		||||
		reg = <0 0xee020000 0 0x400>;
 | 
			
		||||
		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
 | 
			
		||||
		clocks = <&cpg CPG_MOD 328>;
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	usb3_peri1: usb@ee060000 {
 | 
			
		||||
		compatible = "renesas,r8a7795-usb3-peri";
 | 
			
		||||
		reg = <0 0xee060000 0 0x400>;
 | 
			
		||||
		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
 | 
			
		||||
		clocks = <&cpg CPG_MOD 327>;
 | 
			
		||||
	};
 | 
			
		||||
| 
						 | 
				
			
			@ -174,6 +174,17 @@ config USB_RENESAS_USBHS_UDC
 | 
			
		|||
	   dynamically linked module called "renesas_usbhs" and force all
 | 
			
		||||
	   gadget drivers to also be dynamically linked.
 | 
			
		||||
 | 
			
		||||
config USB_RENESAS_USB3
 | 
			
		||||
	tristate 'Renesas USB3.0 Peripheral controller'
 | 
			
		||||
	depends on ARCH_SHMOBILE || COMPILE_TEST
 | 
			
		||||
	help
 | 
			
		||||
	   Renesas USB3.0 Peripheral controller is a USB peripheral controller
 | 
			
		||||
	   that supports super, high, and full speed USB 3.0 data transfers.
 | 
			
		||||
 | 
			
		||||
	   Say "y" to link the driver statically, or "m" to build a
 | 
			
		||||
	   dynamically linked module called "renesas_usb3" and force all
 | 
			
		||||
	   gadget drivers to also be dynamically linked.
 | 
			
		||||
 | 
			
		||||
config USB_PXA27X
 | 
			
		||||
	tristate "PXA 27x"
 | 
			
		||||
	help
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,6 +19,7 @@ fsl_usb2_udc-y			:= fsl_udc_core.o
 | 
			
		|||
fsl_usb2_udc-$(CONFIG_ARCH_MXC)	+= fsl_mxc_udc.o
 | 
			
		||||
obj-$(CONFIG_USB_M66592)	+= m66592-udc.o
 | 
			
		||||
obj-$(CONFIG_USB_R8A66597)	+= r8a66597-udc.o
 | 
			
		||||
obj-$(CONFIG_USB_RENESAS_USB3)	+= renesas_usb3.o
 | 
			
		||||
obj-$(CONFIG_USB_FSL_QE)	+= fsl_qe_udc.o
 | 
			
		||||
obj-$(CONFIG_USB_S3C_HSUDC)	+= s3c-hsudc.o
 | 
			
		||||
obj-$(CONFIG_USB_LPC32XX)	+= lpc32xx_udc.o
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										1975
									
								
								drivers/usb/gadget/udc/renesas_usb3.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1975
									
								
								drivers/usb/gadget/udc/renesas_usb3.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
		Loading…
	
		Reference in a new issue