Go to the documentation of this file.
4 #define DMAC_REG(x) (*((volatile u32 *)(DMAC_REGS_VIRT + (x))))
6 #define DCSR(n) DMAC_REG((n) << 2)
7 #define DALGN DMAC_REG(0x00a0)
8 #define DINT DMAC_REG(0x00f0)
9 #define DDADR(n) DMAC_REG(0x0200 + ((n) << 4))
10 #define DSADR(n) DMAC_REG(0x0204 + ((n) << 4))
11 #define DTADR(n) DMAC_REG(0x0208 + ((n) << 4))
12 #define DCMD(n) DMAC_REG(0x020c + ((n) << 4))
13 #define DRCMR(n) DMAC_REG((((n) < 64) ? 0x0100 : 0x1100) + \
16 #define DCSR_RUN (1 << 31)
17 #define DCSR_NODESC (1 << 30)
18 #define DCSR_STOPIRQEN (1 << 29)
19 #define DCSR_REQPEND (1 << 8)
20 #define DCSR_STOPSTATE (1 << 3)
21 #define DCSR_ENDINTR (1 << 2)
22 #define DCSR_STARTINTR (1 << 1)
23 #define DCSR_BUSERR (1 << 0)
25 #define DCSR_EORIRQEN (1 << 28)
26 #define DCSR_EORJMPEN (1 << 27)
27 #define DCSR_EORSTOPEN (1 << 26)
28 #define DCSR_SETCMPST (1 << 25)
29 #define DCSR_CLRCMPST (1 << 24)
30 #define DCSR_CMPST (1 << 10)
31 #define DCSR_EORINTR (1 << 9)
33 #define DRCMR_MAPVLD (1 << 7)
34 #define DRCMR_CHLNUM 0x1f
36 #define DDADR_DESCADDR 0xfffffff0
37 #define DDADR_STOP (1 << 0)
39 #define DCMD_INCSRCADDR (1 << 31)
40 #define DCMD_INCTRGADDR (1 << 30)
41 #define DCMD_FLOWSRC (1 << 29)
42 #define DCMD_FLOWTRG (1 << 28)
43 #define DCMD_STARTIRQEN (1 << 22)
44 #define DCMD_ENDIRQEN (1 << 21)
45 #define DCMD_ENDIAN (1 << 18)
46 #define DCMD_BURST8 (1 << 16)
47 #define DCMD_BURST16 (2 << 16)
48 #define DCMD_BURST32 (3 << 16)
49 #define DCMD_WIDTH1 (1 << 14)
50 #define DCMD_WIDTH2 (2 << 14)
51 #define DCMD_WIDTH4 (3 << 14)
52 #define DCMD_LENGTH 0x01fff