Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
DMA block configuration structure. More...
#include <dma.h>
Data Fields | |
uint32_t | source_address |
block starting address at source | |
uint32_t | dest_address |
block starting address at destination | |
uint32_t | source_gather_interval |
Address adjustment at gather boundary. | |
uint32_t | dest_scatter_interval |
Address adjustment at scatter boundary. | |
uint16_t | dest_scatter_count |
Continuous transfer count between scatter boundaries. | |
uint16_t | source_gather_count |
Continuous transfer count between gather boundaries. | |
uint32_t | block_size |
Number of bytes to be transferred for this block. | |
struct dma_block_config * | next_block |
Pointer to next block in a transfer list. | |
uint16_t | source_gather_en: 1 |
Enable source gathering when set to 1. | |
uint16_t | dest_scatter_en: 1 |
Enable destination scattering when set to 1. | |
uint16_t | source_addr_adj: 2 |
Source address adjustment option. | |
uint16_t | dest_addr_adj: 2 |
Destination address adjustment. | |
uint16_t | source_reload_en: 1 |
Reload source address at the end of block transfer. | |
uint16_t | dest_reload_en: 1 |
Reload destination address at the end of block transfer. | |
uint16_t | fifo_mode_control: 4 |
FIFO fill before starting transfer, HW specific meaning. | |
uint16_t | flow_control_mode: 1 |
Transfer flow control mode. | |
DMA block configuration structure.
Aside from source address, destination address, and block size many of these options are hardware and driver dependent.
uint32_t dma_block_config::block_size |
Number of bytes to be transferred for this block.
uint16_t dma_block_config::dest_addr_adj |
Destination address adjustment.
uint32_t dma_block_config::dest_address |
block starting address at destination
uint16_t dma_block_config::dest_reload_en |
Reload destination address at the end of block transfer.
uint16_t dma_block_config::dest_scatter_count |
Continuous transfer count between scatter boundaries.
uint16_t dma_block_config::dest_scatter_en |
Enable destination scattering when set to 1.
uint32_t dma_block_config::dest_scatter_interval |
Address adjustment at scatter boundary.
uint16_t dma_block_config::fifo_mode_control |
FIFO fill before starting transfer, HW specific meaning.
uint16_t dma_block_config::flow_control_mode |
Transfer flow control mode.
struct dma_block_config* dma_block_config::next_block |
Pointer to next block in a transfer list.
uint16_t dma_block_config::source_addr_adj |
Source address adjustment option.
uint32_t dma_block_config::source_address |
block starting address at source
uint16_t dma_block_config::source_gather_count |
Continuous transfer count between gather boundaries.
uint16_t dma_block_config::source_gather_en |
Enable source gathering when set to 1.
uint32_t dma_block_config::source_gather_interval |
Address adjustment at gather boundary.
uint16_t dma_block_config::source_reload_en |
Reload source address at the end of block transfer.