Zephyr Project API
4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
ameba_dma.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2026 Realtek Semiconductor Corp.
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_AMEBA_DMA_H_
8
#define ZEPHYR_INCLUDE_DT_BINDINGS_AMEBA_DMA_H_
9
17
22
28
#define AMEBA_DMA_CH_DIR_SET(val) ((val & 0x3) << 0)
29
33
#define AMEBA_DMA_MEMORY_TO_MEMORY AMEBA_DMA_CH_DIR_SET(0)
34
38
#define AMEBA_DMA_MEMORY_TO_PERIPH AMEBA_DMA_CH_DIR_SET(1)
39
43
#define AMEBA_DMA_PERIPH_TO_MEMORY AMEBA_DMA_CH_DIR_SET(2)
44
48
#define AMEBA_DMA_PERIPH_TO_PERIPH AMEBA_DMA_CH_DIR_SET(3)
49
55
#define AMEBA_DMA_SRC_ADDR_ADJ_SET(val) ((val & 0x3) << 2)
56
60
#define AMEBA_DMA_SRC_ADDR_ADJ_INC AMEBA_DMA_SRC_ADDR_ADJ_SET(0)
61
65
#define AMEBA_DMA_SRC_ADDR_ADJ_NO_CHANGE AMEBA_DMA_SRC_ADDR_ADJ_SET(2)
66
72
#define AMEBA_DMA_DST_ADDR_ADJ_SET(val) ((val & 0x3) << 4)
73
77
#define AMEBA_DMA_DST_ADDR_ADJ_INC AMEBA_DMA_DST_ADDR_ADJ_SET(0)
78
82
#define AMEBA_DMA_DST_ADDR_ADJ_NO_CHANGE AMEBA_DMA_DST_ADDR_ADJ_SET(2)
83
89
#define AMEBA_DMA_SRC_DATA_SIZE_SET(val) ((val & 0x7) << 6)
90
94
#define AMEBA_DMA_SRC_WIDTH_8BITS AMEBA_DMA_SRC_DATA_SIZE_SET(0)
95
99
#define AMEBA_DMA_SRC_WIDTH_16BITS AMEBA_DMA_SRC_DATA_SIZE_SET(1)
100
104
#define AMEBA_DMA_SRC_WIDTH_32BITS AMEBA_DMA_SRC_DATA_SIZE_SET(2)
105
111
#define AMEBA_DMA_DST_DATA_SIZE_SET(val) ((val & 0x7) << 9)
112
116
#define AMEBA_DMA_DST_WIDTH_8BITS AMEBA_DMA_DST_DATA_SIZE_SET(0)
117
121
#define AMEBA_DMA_DST_WIDTH_16BITS AMEBA_DMA_DST_DATA_SIZE_SET(1)
122
126
#define AMEBA_DMA_DST_WIDTH_32BITS AMEBA_DMA_DST_DATA_SIZE_SET(2)
127
133
#define AMEBA_DMA_SRC_BURST_SET(val) ((val & 0x1F) << 12)
134
138
#define AMEBA_DMA_SRC_BURST_ONE AMEBA_DMA_SRC_BURST_SET(0)
139
143
#define AMEBA_DMA_SRC_BURST_FOUR AMEBA_DMA_SRC_BURST_SET(1)
144
148
#define AMEBA_DMA_SRC_BURST_EIGHT AMEBA_DMA_SRC_BURST_SET(2)
149
153
#define AMEBA_DMA_SRC_BURST_SIXTEEN AMEBA_DMA_SRC_BURST_SET(3)
154
160
#define AMEBA_DMA_DST_BURST_SET(val) ((val & 0x1F) << 17)
161
165
#define AMEBA_DMA_DST_BURST_ONE AMEBA_DMA_DST_BURST_SET(0)
166
170
#define AMEBA_DMA_DST_BURST_FOUR AMEBA_DMA_DST_BURST_SET(1)
171
175
#define AMEBA_DMA_DST_BURST_EIGHT AMEBA_DMA_DST_BURST_SET(2)
176
180
#define AMEBA_DMA_DST_BURST_SIXTEEN AMEBA_DMA_DST_BURST_SET(3)
181
187
#define AMEBA_DMA_CH_PRIORITY_SET(val) ((val & 0x7) << 22)
188
194
#define AMEBA_DMA_PERIPH_TX \
195
(AMEBA_DMA_MEMORY_TO_PERIPH | AMEBA_DMA_SRC_ADDR_ADJ_INC | AMEBA_DMA_DST_ADDR_ADJ_NO_CHANGE)
196
202
#define AMEBA_DMA_PERIPH_RX \
203
(AMEBA_DMA_PERIPH_TO_MEMORY | AMEBA_DMA_SRC_ADDR_ADJ_NO_CHANGE | AMEBA_DMA_DST_ADDR_ADJ_INC)
204
206
207
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_AMEBA_DMA_H_ */
include
zephyr
dt-bindings
dma
ameba_dma.h
Generated on
for Zephyr Project API by
1.16.1