mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 09:36:25 +00:00 
			
		
		
		
	 fc467a2623
			
		
	
	
		fc467a2623
		
	
	
	
	
		
			
			The DMABRG is a special DMA unit within the SH7760 which does data transfers from main memory to Audio units and USB shared memory. It has 3 IRQ lines which generate 10 events, which have to be masked unmasked and acked in a single 32bit register. It works independently from the tradition SH DMAC, but blocks usage of DMAC channel 0. This patch adds 2 functions to associate callbacks with DMABRG events and initialization. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
		
			
				
	
	
		
			24 lines
		
	
	
		
			497 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			497 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * SH7760 DMABRG (USB/Audio) support
 | |
|  */
 | |
| 
 | |
| #ifndef _DMABRG_H_
 | |
| #define _DMABRG_H_
 | |
| 
 | |
| /* IRQ sources */
 | |
| #define DMABRGIRQ_USBDMA	0
 | |
| #define DMABRGIRQ_USBDMAERR	1
 | |
| #define DMABRGIRQ_A0TXF		2
 | |
| #define DMABRGIRQ_A0TXH		3
 | |
| #define DMABRGIRQ_A0RXF		4
 | |
| #define DMABRGIRQ_A0RXH		5
 | |
| #define DMABRGIRQ_A1TXF		6
 | |
| #define DMABRGIRQ_A1TXH		7
 | |
| #define DMABRGIRQ_A1RXF		8
 | |
| #define DMABRGIRQ_A1RXH		9
 | |
| 
 | |
| extern int dmabrg_request_irq(unsigned int, void(*)(void *), void *);
 | |
| extern void dmabrg_free_irq(unsigned int);
 | |
| 
 | |
| #endif
 |