Skip to content

Commit b19e8cf

Browse files
abonislawskinashif
authored andcommitted
dma: Add config option for cyclic transfer lists
Adds a bit flag config option for cyclic transfer lists, where the transfer list tail may link to its head creating a never ending loop of transfer descriptors. DesignWare DMA supports such cyclic transfers. Signed-off-by: Adrian Bonislawski <[email protected]>
1 parent 5ae78fb commit b19e8cf

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

include/drivers/dma.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,9 @@ typedef void (*dma_callback_t)(const struct device *dev, void *user_data,
172172
* @param linked_channel [ 20 : 26 ] - after channel count exhaust will
173173
* initiate a channel service request
174174
* at this channel
175-
* @param reserved [ 27 : 31 ]
175+
* @param cyclic [ 27 ] - enable/disable cyclic buffer
176+
* 0-disable, 1-enable
177+
* @param reserved [ 28 : 31 ]
176178
* @param source_data_size [ 0 : 15 ] - width of source data (in bytes)
177179
* @param dest_data_size [ 16 : 31 ] - width of dest data (in bytes)
178180
* @param source_burst_length [ 0 : 15 ] - number of source data units
@@ -193,7 +195,8 @@ struct dma_config {
193195
uint32_t source_chaining_en : 1;
194196
uint32_t dest_chaining_en : 1;
195197
uint32_t linked_channel : 7;
196-
uint32_t reserved : 5;
198+
uint32_t cyclic : 1;
199+
uint32_t reserved : 4;
197200
uint32_t source_data_size : 16;
198201
uint32_t dest_data_size : 16;
199202
uint32_t source_burst_length : 16;

0 commit comments

Comments
 (0)