mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-27 05:00:50 +07:00
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
|