3 #ifndef __NVIDIA_TEGRA210_DMA_H__
4 #define __NVIDIA_TEGRA210_DMA_H__
6 #include <soc/addressmap.h>
13 #define TEGRA_DMA_ALIGN_BYTES 4
20 #define APB_COMMAND_GEN (1 << 31)
22 #define APB_CNTRL_REG_COUNT_VALUE_MASK 0xffff
23 #define APB_CNTRL_REG_COUNT_VALUE_SHIFT 0
30 #define APB_COMMAND_GEN (1 << 31)
32 #define APB_CNTRL_REG_COUNT_VALUE_MASK 0xffff
33 #define APB_CNTRL_REG_COUNT_VALUE_SHIFT 0
60 #define SECURITY_EN_BIT(ch) (1 << ch)
66 #define APB_CSR_ENB (1 << 31)
67 #define APB_CSR_IE_EOC (1 << 30)
68 #define APB_CSR_HOLD (1 << 29)
69 #define APB_CSR_DIR (1 << 28)
70 #define APB_CSR_ONCE (1 << 27)
71 #define APB_CSR_FLOW (1 << 21)
72 #define APB_CSR_REQ_SEL_MASK 0x1f
73 #define APB_CSR_REQ_SEL_SHIFT 16
110 #define APB_STA_BSY (1 << 31)
111 #define APB_STA_ISE_EOC (1 << 30)
112 #define APB_STA_HALT (1 << 29)
113 #define APB_STA_PING_PONG_STA (1 << 28)
114 #define APB_STA_DMA_ACTIVITY (1 << 27)
115 #define APB_STA_CHANNEL_PAUSE (1 << 26)
117 #define APB_CSRE_CHANNEL_PAUSE (1 << 31)
118 #define APB_CSRE_TRIG_SEL_MASK 0x3f
119 #define APB_CSRE_TRIG_SEL_SHIFT 14
121 #define AHB_PTR_MASK (0x3fffffff)
122 #define AHB_PTR_SHIFT 2
124 #define AHB_SEQ_INTR_ENB (1 << 31)
125 #define AHB_BUS_WIDTH_MASK 0x7
126 #define AHB_BUS_WIDTH_SHIFT 28
127 #define AHB_DATA_SWAP (1 << 27)
128 #define AHB_BURST_MASK 0x7
129 #define AHB_BURST_SHIFT 24
130 #define AHB_SEQ_DBL_BUF (1 << 19)
131 #define AHB_SEQ_WRAP_MASK 0x7
132 #define AHB_SEQ_WRAP_SHIFT 16
134 #define APB_PTR_MASK 0x3fffffff
135 #define APB_PTR_SHIFT 2
137 #define APB_BUS_WIDTH_MASK 0x7
138 #define APB_BUS_WIDTH_SHIFT 28
139 #define APB_DATA_SWAP (1 << 27)
140 #define APB_ADDR_WRAP_MASK 0x7
141 #define APB_ADDR_WRAP_SHIFT 16
143 #define APB_WORD_TRANSFER_MASK 0x0fffffff
144 #define APB_WORD_TRANSFER_SHIFT 2
struct apb_dma_channel_regs * regs
check_member(apb_dma, channel_swid1, 0x54)
int dma_start(struct apb_dma_channel *const channel)
int dma_stop(struct apb_dma_channel *const channel)
void dma_release(struct apb_dma_channel *const channel)
int dma_busy(struct apb_dma_channel *const channel)
struct apb_dma_channel *const dma_claim(void)