1 #ifndef __ASM_SH_CPU_SH4_DMA_SH7780_H
2 #define __ASM_SH_CPU_SH4_DMA_SH7780_H
4 #if defined(CONFIG_CPU_SUBTYPE_SH7343) || \
5 defined(CONFIG_CPU_SUBTYPE_SH7722) || \
6 defined(CONFIG_CPU_SUBTYPE_SH7730)
9 #define DMAE0_IRQ 78 /* DMA Error IRQ*/
10 #define SH_DMAC_BASE0 0xFE008020
11 #define SH_DMARS_BASE 0xFE009000
12 #elif defined(CONFIG_CPU_SUBTYPE_SH7763) || \
13 defined(CONFIG_CPU_SUBTYPE_SH7764)
17 #define SH_DMAC_BASE0 0xFF608020
18 #define SH_DMARS_BASE 0xFF609000
19 #elif defined(CONFIG_CPU_SUBTYPE_SH7723) || \
20 defined(CONFIG_CPU_SUBTYPE_SH7724)
21 #define DMTE0_IRQ 48 /* DMAC0A*/
22 #define DMTE4_IRQ 76 /* DMAC0B */
24 #define DMTE8_IRQ 42 /* DMAC1A */
26 #define DMTE10_IRQ 72 /* DMAC1B */
28 #define DMAE0_IRQ 78 /* DMA Error IRQ*/
29 #define DMAE1_IRQ 74 /* DMA Error IRQ*/
30 #define SH_DMAC_BASE0 0xFE008020
31 #define SH_DMAC_BASE1 0xFDC08020
32 #define SH_DMARS_BASE 0xFDC09000
33 #elif defined(CONFIG_CPU_SUBTYPE_SH7780)
41 #define DMAE0_IRQ 38 /* DMA Error IRQ */
42 #define SH_DMAC_BASE0 0xFC808020
43 #define SH_DMAC_BASE1 0xFC818020
44 #define SH_DMARS_BASE 0xFC809000
53 #define DMAE0_IRQ 39 /* DMA Error IRQ0 */
54 #define DMAE1_IRQ 58 /* DMA Error IRQ1 */
55 #define SH_DMAC_BASE0 0xFC808020
56 #define SH_DMAC_BASE1 0xFCC08020
57 #define SH_DMARS_BASE 0xFC809000
60 #define REQ_HE 0x000000C0
61 #define REQ_H 0x00000080
62 #define REQ_LE 0x00000040
63 #define TM_BURST 0x0000020
64 #define TS_8 0x00000000
65 #define TS_16 0x00000008
66 #define TS_32 0x00000010
67 #define TS_16BLK 0x00000018
68 #define TS_32BLK 0x00100000
71 * The SuperH DMAC supports a number of transmit sizes, we list them here,
72 * with their respective values as they appear in the CHCR registers.
74 * Defaults to a 64-bit transfer size.
85 * The DMA count is defined as the number of bytes to transfer.
87 static unsigned int ts_shift
[] __maybe_unused
= {
95 #endif /* __ASM_SH_CPU_SH4_DMA_SH7780_H */